0

我目前正在将网站从 php 移植到 python。php web 应用程序正在使用无扩展 url

DefaultType application/x-httpd-php

我可以为 python 做这样的事情吗?我已经通过谷歌搜索并尝试添加对 python 有意义的 mime 类型,但到目前为止还没有成功。如果可能的话,我宁愿这样做,而不是使用 mod_rewrite。

谢谢。

更新:我的服务器当前设置为使用 wsgi,但是如果我的 python 脚本没有扩展名,浏览器将下载它们而不是被服务器解析。

4

2 回答 2

1

WSGI 根本不使用/不需要扩展;您的路由框架会适当地处理 URL。如果你不使用 WSGI... 为什么不呢?

于 2011-04-14T02:23:25.977 回答
0

我想一个完整的答案将永远需要,但在 apache 上运行 python 的最佳方式是通过 WSGI,所以我建议你从这里开始:http ://code.google.com/p/modwsgi/

这基本上需要两件事:

  1. 用于 apache 的 mod_wsgi(小警告,从 apt 包安装将切换您的 apache MPM 并可能卸载您的 mod_php;它们确实可以一起生活,但需要一些手工操作)
  2. 一个实现基本wsgi接口的python脚本

如果您正在构建一个网站,那么您需要处理的事情太多了,因此使用 MVC 框架是有意义的,而 Django 是 python 的自然选择,除非您需要花哨的现代功能,例如 websockets 支持。它附带了一个关于设置机器的很棒的教程(对于 wsgi:http ://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/ )

好的是 Django(与大多数 MVC 一样)负责路由您的请求 - 因此您不仅实现了无扩展,而且实现了完整的类似 REST 的访问。

使用 MVC 框架,您基本上是从面向页面的网站转移到真正的 Web 应用程序...支撑!

从这个答案开始,您应该能够在 stackoverflow 和 serverfault 上找到这么多相关的问答......

于 2011-04-14T02:26:43.517 回答