2012-01-28 42 views
1

我有一個網站http://foo.com Apache的80端口上運行,我想重定向到一個Django應用程序在端口8000不過,我有一個文件夾,foo.com/wiki這是我不希望重定向,讓它指向我的wiki文件夾中我經常/var/www directory。在我的httpd.conf文件我有:ProxyPass URL規則?

... 
WSGIScriptAlias//path/to/project/wsgi.py 

ProxyPass /wiki ! 

ProxyPass/http://localhost:8000/ 

ProxyPassReverse/http://localhost:8000/ 

這似乎導致foo.com/wiki無處(您沒有權限訪問/維基/在此服務器上)。我在另一個問題聽過ProxyPassMatch,也試過

ProxyPassMatch ^/(wiki/*) http://localhost:8000/ 

ProxyPassReverse ^/(wiki/*) http://localhost:8000/ 

這也沒有爲我工作。

+0

如果刪除代理的事情,確實在維基/ URL的作品?如果你仍然有權限問題,然後解決它(DocumentRoot,用戶權限等)。然後重建代理事物,這可能完全與您的問題無關。 – regilero 2012-01-28 17:43:42

+0

是的,如果我刪除所有代理行,我可以訪問foo.com和foo.com/wiki – JCWong 2012-01-28 19:20:42

回答

0

我沒有什麼測試。但我認爲這可能與WSGIScriptAlias指令有關。您排除/ wiki代理重寫,但不是從WSGIScriptAlias的東西。

也許你可以嘗試這樣的事情:

<Location /wiki> 
    RemoveHandler wsgi-script 
    Options -ExecCGI 
</Location> 

或代替使用WSGIScriptAliasMatch並排除在正則表達式維基子網址。