1、安装apache
如果安装了apache,确保配置没有进行大幅的修改,否则可能会有影响。如果没有安装apache,通过apt-get安装:
$ sudo apt-get install apache2
Tips:如果是自行编译安装,下面提到的配置和目录根据实际情况修改。
2、安装mod_python模块
这个模块内嵌了python解释器,apache就可以通过该模块运行python脚本,然后将内容输出到浏览器。这个模块就像个桥一样,连接apache和python。安装也非常简单,apt-get直接安装:
$ sudo apt-get install libapache2-mod-python
安装完成后,查看/etc/apache2/mods-enabled/python.load,可以看到模块已经被加载进来了,完全不用自己手动添加。
$ less /etc/apache2/mods-enabled/python.load
LoadModule python_module /usr/lib/apache2/modules/mod_python.so
3、告诉apache在碰到py后缀的文件时用python执行
修改/etc/apache2/sites-enabled/000-default配置文件,找到如下配置:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
如果你的配置没有改动,看到的应该和上面一样。在Directory内增加三行配置,最终如下:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
AddHandler mod_python .py
PythonHandler test
PythonDebug On
保存后,重新启动下apache:
$ sudo /etc/init.d/apache2 restart
至此环境就全部完成了,下面进行测试下。
测试
在站点根目录/var/www/下新建hello.py文件,内容如下:
from mod_python import apache
def handler(req):
req.write("Hello World!")
return apache.OK
确保该文件有执行权限,为了方便直接改成777:
$ chmod 777 hello.py
用浏览器访问下该文件:
http://localhost/hello.py
如果看到hello world!就表示成功了。
问题来源于python学习网
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。