脚本名与请求的\u URI不匹配网页.py在apache cgid modu中

2024-10-16 20:51:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图部署我的网页.pymod_cgid模块在Apache中的应用。在

我已经在网址.py在

urls = (
    '/app/', 'index.index',
    '/', 'index.index'
)

这就是我的应用程序开始的地方webstart.py在

^{pr2}$

我的Apache配置如下所示

<Directory "dirname">
   Options +ExecCGI +FollowSymLinks +Indexes
   Order allow,deny
   Allow from all
   Require all granted
   DirectoryIndex webstart.py
</Directory>

当我试图用localhost/app/访问我的服务器时,它总是显示notfound页面,并且在日志中,我看到消息sage“WARNING:SCRIPT_NAME does not match REQUEST_URI”

然后我试着把这两个变量打印在notfound页面上,我得到了/app/webstart.py和/app/。在

当我使用localhost/app/访问应用程序时,如何让它工作?在


Tags: pyapp应用程序localhost网页indexapache部署
2条回答

无法解决这个问题,所以使用了wsgi模块。我就是这样做的。。。http://dfourtheye.blogspot.in/2013/03/deploying-webpy-application-in-apache.html

DirectoryIndex webstart.py

您已经在Apache配置中为目录访问指定了默认主页。因此,当您访问诸如URL之类的目录时,例如localhost/app/,Apache将其视为localhost/app/webstart.py,然后将请求发送到网页.py. 尝试从Apache配置中删除该条目并重新启动Apache守护进程。在

更新

当您deploy web.py through CGI时,您得到了服务器http://localhost/webstart.py的条目,前提是您的CGI脚本目录是{}ed/。以及中的路线定义webstart.py在那个网址后面。所以您应该访问http://localhost/webstart.py/app/,以获得您的/app/路线。您需要一些mod_rewrite定义来获得http://localhost/app/这样的url。在

相关问题 更多 >