ProxyPass 与 Gollum wiki

ProxyPass 与 Gollum wiki

我正在尝试奔跑咕噜,一个使用 git 的 wiki,在 Debian 服务器上供个人使用。在没有任何命令行选项的情况下启动它会使其监听http://localhost:4567,我可以很好地访问它,即使是从同一 LAN 上的 PC(具有正确的 IP)也是如此。

但是,我想通过 访问它http://x.x.x.x/gollum,所以我将这些行添加到apache2.conf

ProxyPass /gollum/ http://localhost:4567/
ProxyPassReverse http://localhost:4567 /gollum/

访问http://x.x.x.x/gollum/home(/home 是应用程序的主页)可以正常工作,但它只会显示页面的 html,而没有 css、javascript、图像,甚至链接也无法正常工作。该error.log文件充满了这样的错误,仅举一个例子:

File does not exist: /usr/share/javascript/editor, referer: http://192.168.1.68/gollum/home
File does not exist: /usr/share/javascript/gollum.js, referer: http://192.168.1.68/gollum/home

在页面的 html 中,如果我用 Firefox 检查它,上面的项目的链接都是写的,例如,像这样:src="/javascript/gollum.js"

如果我直接写入文件的 url,http://localhost/javascript/gollum/gollum.js则会加载正确的文件。

那么,我怎样才能使该网站正常工作呢http://localhost/gollum/?我是否做错了重定向,或者这可能是因为 gollum 不支持以这种方式部署?

答案1

我今天刚尝试这个。
我发现,要在 www.mydom.com/wiki 上托管咕噜,需要做两件事。

首先,为 wiki 配置一个 apache 虚拟主机。

<VirtualHost *:80>
    ServerName www.mydom.com
    ProxyPass /wiki http://localhost:4567/wiki
    ProxyPassReverse /wiki http://localhost:4567/wiki
</VirtualHost>

我知道 ProxyPass 中的 .../wiki 看起来很奇怪,但请耐心听我说几行!

接下来,按以下方式运行 gollum:

~$ gollum --host 127.0.0.1 --port 4567 --base-path wiki

如果您使用默认值,则无需设置主机/端口(在此阶段我正在混合和匹配!)。
--base-path语句将告诉 Gollum 从 /wiki 而不是 / 运行。

似乎为了工作,我只坚持了五分钟左右。创建、查看、删除等全部工作。我遇到的唯一问题是图标在“全部”列表中没有正确显示。

编辑:代码块格式不正确(降价)。

相关内容