From d267d88c9cb1fb4a45120b86e410ab604626c6bb Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Sun, 11 Nov 2007 21:57:21 +0100 Subject: [PATCH] Add support for "robots" meta-tag With this change, cgit will start to generate the "robots" meta-tag, using a default value of "index, nofollow". The default value can be modified with a new cgitrc variable, "robots". Signed-off-by: Lars Hjemli --- cgit.h | 1 + cgitrc | 5 +++++ shared.c | 3 +++ ui-shared.c | 2 ++ 4 files changed, 11 insertions(+) diff --git a/cgit.h b/cgit.h index 6291c58..ab0efeb 100644 --- a/cgit.h +++ b/cgit.h @@ -139,6 +139,7 @@ extern char *cgit_virtual_root; extern char *cgit_script_name; extern char *cgit_cache_root; extern char *cgit_repo_group; +extern char *cgit_robots; extern int cgit_nocache; extern int cgit_snapshots; diff --git a/cgitrc b/cgitrc index 6363c9c..8c616e0 100644 --- a/cgitrc +++ b/cgitrc @@ -8,6 +8,11 @@ #nocache=0 +## This variable can be used to override the default value for "robots" +## meta-tag. If unset, the meta-tag isn't generated. +#robots=index, nofollow + + ## Set allowed snapshot types by default. Can be overridden per repo # can be any combination of zip/tar.gz/tar.bz2/tar #snapshots=0 diff --git a/shared.c b/shared.c index 8cb4808..fd8b1e3 100644 --- a/shared.c +++ b/shared.c @@ -26,6 +26,7 @@ char *cgit_virtual_root = NULL; char *cgit_script_name = CGIT_SCRIPT_NAME; char *cgit_cache_root = CGIT_CACHE_ROOT; char *cgit_repo_group = NULL; +char *cgit_robots = "index, nofollow"; int cgit_nocache = 0; int cgit_snapshots = 0; @@ -197,6 +198,8 @@ void cgit_global_config_cb(const char *name, const char *value) cgit_agefile = xstrdup(value); else if (!strcmp(name, "renamelimit")) cgit_renamelimit = atoi(value); + else if (!strcmp(name, "robots")) + cgit_robots = xstrdup(value); else if (!strcmp(name, "repo.group")) cgit_repo_group = xstrdup(value); else if (!strcmp(name, "repo.url")) diff --git a/ui-shared.c b/ui-shared.c index 5192800..2f771da 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -364,6 +364,8 @@ void cgit_print_docstart(char *title, struct cacheitem *item) html_txt(title); html("\n"); htmlf("\n", cgit_version); + if (cgit_robots && *cgit_robots) + htmlf("\n", cgit_robots); html("\n");