2

我使用在我的 apache2.conf 文件中声明的 hgweb.cgi 脚本在 apache Web 服务器上设置了一个存储库,如下所示:

ScriptAlias /hgp "/var/www/hgrepublic/hgweb.cgi"

在我的 hgweb.cgi 脚本中,如果我将配置变量设置为存储库的路径:

config = "/var/www/hgrepublic/fakecake"

它有效,我在http://localhost/hgp看到了我的存储库的历史记录

现在,如果我想使用 hgweb.config 文件,我在 hgweb.cgi 脚本中设置 config 变量,例如:

config = "hgweb.config"

无论我尝试在配置文件中使用什么路径,我都无法在 Web 界面中看到我的存储库(空存储库索引)。这是我尝试使用绝对路径和相对路径的一些示例

[paths]
/ = /var/www/hgrepublic/**
fakecake = /fakecake
fakecake = /var/www/hgrepublic/fakecake

有什么想法可以帮助我使其与配置文件一起使用吗?(我想在配置文件中声明几个存储库)

注意:hgweb cgi 和配置文件位于 /var/www/hgrepublic/ 文件夹以及 fakecake 存储库文件夹中。

4

2 回答 2

1

I found a solution to my own question by looking at the source.

I used a dict in the hgweb.cgi file to pass the different repositories I want to show:

config = {'repo1' : '/path/to/repo1', 'repo2' : '/path/to/repo2'}

It works like this, so I think that there might be a parsing problem in hgweb.config file for [paths] section?

于 2011-09-01T14:31:14.993 回答
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
于 2016-10-18T06:53:01.020 回答