2011-08-24 22 views
2

我必須用我的apache2.conf文件中聲明的hgweb.cgi腳本的Apache Web服務器上建立一個倉庫如下:善變hgweb.config沒有找到倉庫,路徑問題

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

在我hgweb.cgi劇本,如果我設置的配置變量的路徑,我的倉庫:

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和配置文件位於/ var/www/hgrepublic /文件夾以及fakecake存儲庫文件夾中。

回答

1

我通過查看源代碼找到了自己的問題的解決方案。

我曾經在hgweb.cgi文件的字典來傳遞不同的信息庫我要展示:

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

它的工作原理是這樣的,所以我覺得有可能是hgweb.config解析問題文件的[路徑]部分?

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