我在apache web服务器上使用我的apache2.conf文件中声明的hgweb.cgi脚本设置了一个存储库,如下所示:
ScriptAlias /hgp "/var/www/hgrepublic/hgweb.cgi"
在我的hgweb.cgi脚本中,如果我将config变量设置为我的存储库的路径:
config = "/var/www/hgrepublic/fakecake"
它有效,我在http://localhost/hgp
看到了我的存储库的历史记录现在,如果我想使用hgweb.config文件,我在hgweb.cgi脚本中设置配置变量,如:
config = "hgweb.config"
无论我尝试在配置文件中使用哪条路径,我都无法在Web界面中看到我的存储库(空存储库索引)。以下是我尝试使用绝对路径和相对路径的一些示例
[paths]
/ = /var/www/hgrepublic/**
fakecake = /fakecake
fakecake = /var/www/hgrepublic/fakecake
有什么想法可以帮助我使用配置文件吗? (我想在配置文件中声明几个存储库)
注意:hgweb cgi和config文件位于/ var / www / hgrepublic /文件夹以及fakecake存储库文件夹中。
答案 0 :(得分:1)
通过查看来源,我找到了解决自己问题的方法。
我在hgweb.cgi文件中使用了一个dict来传递我想要显示的不同存储库:
config = {'repo1' : '/path/to/repo1', 'repo2' : '/path/to/repo2'}
它是这样的,所以我认为[path]部分的hgweb.config文件中可能存在解析问题?
答案 1 :(得分:0)
[paths]
部分将URL转换为存储库路径。尝试:
hgweb.config
[paths]
/hpg/fakecake = /var/www/hgrepublic/fakecake
/hpg/repo2 = /var/www/hgrepublic/repo2
hgweb.cgi
config = "hgweb.cgi" # or /path/to/hgweb.cgi if not in cwd