2009-01-05 41 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检查是在观察文件系统的情况下完成的。