2009-01-05 66 views
1

在我的Apache網絡服務器,我把這個:如何訪問mod_python目錄中的根路徑?

<Directory /var/www/MYDOMAIN.com/htdocs> 
    SetHandler mod_python 
    PythonHandler mod_python.publisher 
    PythonDebug On 
</Directory> 

然後,我有一個索引功能的handler.py文件。

當我進入MYDOMAIN.com/handler.py時,我看到一個由索引函數生成的網頁(只是一個普通的香草HTML頁面)。每個其他頁面都是這種類型:MYDOMAIN.com/handler.py/ somename其中somename對應於handler.py文件中的funcion。

但是,當我去MYDOMAIN.com,我得到這個:

未找到

請求的URL /上 該服務器沒有被發現。

是否使用mod_python和publisher僅使用root而不是name.py作爲起點的方法?

我已經與這個嘗試在Apache的conf文件:

的DirectoryIndex handler.py

無濟於事:(

+0

請勿使用mod_python。它很爛。改用mod_wsgi。 – nosklo 2009-01-05 14:48:16

回答

2

是的,但你需要創建你自己的處理程序。您目前使用發佈者,它只是檢查URI並加載給定的python模塊。

要創建自己的處理程序,你需要創建這樣一個模塊(只是一個簡約的例子):

from mod_python import apache 

def requesthandler(req): 
    req.content_type = "text/plain" 
    req.write("Hello World!") 
    return apache.OK 

然後你只需指向它的Apache配置。

您仍然可以在您自己的處理程序中使用發佈者處理程序,儘管您無法使用它發佈相應的URL AFAIK。

0

嘗試創建一個名爲索引的空文件(或任何)然後用

DirectoryIndex index 

好像DirectoryIndex檢查是在觀察文件系統的情況下完成的。