如何在Apache 2.0中配置Python脚本?
我试着按照网上找到的几个教程来设置mod_python,但每次都失败。你有没有一个好的、一步一步的、非常可靠的指南?
我的开发环境是OS X,生产环境是Centos。
4 个回答
10
是的,mod_python的设置确实让人感到困惑。下面是我怎么做的。
在httpd.conf文件中:
LoadModule python_module modules/mod_python.so
<Directory "/serverbase/htdocs/myapp">
AddHandler mod_python .py
PythonHandler myapp
PythonDebug On
然后在你的应用程序目录里:
$ /serverbase/htdocs/myapp$ ls -l
total 16
-r-xr-xr-x 1 root sys 6484 May 21 15:54 myapp.py
对于每个你希望在mod_python下运行的Python程序,都要重复这个配置。
12
在Apache上运行Python主要有两种方法。最简单的方式是使用CGI,直接写普通的Python脚本;第二种方法是使用像Django或Pylons这样的网络框架。
使用CGI非常简单。你需要确保你的Apache配置文件中有设置cgi-bin。如果没有,可以参考他们的文档(http://httpd.apache.org/docs/2.0/howto/cgi.html)。接下来,你只需要把你的Python脚本放到cgi-bin目录里,程序的标准输出就会变成HTTP响应。想了解更多信息,可以查看Python的文档(https://docs.python.org/library/cgi.html)。
如果你想使用网络框架,就需要设置mod_python或FastCGI。这些步骤会根据你选择的框架有所不同。Django提供了清晰的说明,教你如何在Apache上设置mod_python和Django(http://www.djangoproject.com/documentation/modpython/)。