mod_python 中的 URL 未按预期工作

发布于 2024-10-15 13:34:54 字数 525 浏览 4 评论 0原文

我正在使用 apache 和 mod_python 构建一个 Web 服务器。我已经像其他人一样创建了index.py,但与其他人不同的是,如果不向网址添加 .py ,我就无法访问网页。

例如,http://127.0.1.1/commentsubmit 会生成 404,但 http://127.0.1.1/commentsubmit.py 按预期显示页面。

所有内容都在我的 index.py 中,并且 http://127.0.1.1/ 运行良好,但没有 .py 就没有其他内容。我的其他方法如下所示:

def commentsubmit(req):
    rest of method

我很确定问题出在 mod_python 中,但我不知道是什么。是否有某种配置设置可以做到这一点?除了 from mod_python import apache 我应该导入其他东西吗?

I'm building a web server with apache and mod_python. I've created index.py as I've seen others do, but unlike others I can't access web pages without adding a .py to the url.

For example, http://127.0.1.1/commentsubmit produces a 404, but http://127.0.1.1/commentsubmit.py brings up the page as expected.

Everything is in my index.py, and http://127.0.1.1/ comes up fine, but nothing else without the .py. My other methods look like this:

def commentsubmit(req):
    rest of method

I'm pretty sure the problem lies in mod_python, but I have no idea what. Is there some sort of configuration setting that might do this? Something other than from mod_python import apache I should be importing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

挽袖吟 2024-10-22 13:34:54

您的 apache 服务器将配置为将对以 .py 结尾的文件名的请求传递给 mod_python (如果该文件存在于目录中)。

有许多不同的解决方案可以将 /commentsubmit 请求传递给您的 commentssubmit.py 处理程序。最简单的可能是使用 mod_rewrite。添加这个给你.htaac​​ess

RewriteEngine On
RewriteOptions Inherit
RewriteRule   ^commentsubmit$  commentsubmit.py

这是一种过时的做事方式。我建议您查看 pyramid (或 pylons,或 django,或其中之一)然后,您可以使用基于路由的 url 调度或基于横向的 url 调度,更好地控制如何将 ulrs 映射到代码。

Your apache server would have been configured to pass requests to filenames that end in .py to mod_python (if the file exist in the dir.)

There are a number of different solutions to make request to /commentsubmit get passed to your commentsubmit.py handler. The easiest would probably be to to use mod_rewrite. Add this to you .htaacess:

RewriteEngine On
RewriteOptions Inherit
RewriteRule   ^commentsubmit$  commentsubmit.py

This is a dated way to do things. I recommenced that you look at pyramid (or pylons, or django, or one of the million other wsgi frameworks.) You can then have much better control over how to map ulrs to code, using route based url dispatch, or transversal based url dispatch.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文