summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--ui-shared.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 4818e70..c23bc75 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -35,20 +35,25 @@ void cgit_print_error(char *msg)
}
char *cgit_hosturl()
{
char *host, *port;
+ host = getenv("HTTP_HOST");
+ if (host) {
+ host = xstrdup(host);
+ } else {
host = getenv("SERVER_NAME");
if (!host)
return NULL;
port = getenv("SERVER_PORT");
if (port && atoi(port) != 80)
host = xstrdup(fmt("%s:%d", host, atoi(port)));
else
host = xstrdup(host);
+ }
return host;
}
char *cgit_rooturl()
{
if (ctx.cfg.virtual_root)