Apache下使用web.py要注意的地方

我是在Ubuntu 12.04下使用这个组合的。使用的是wsgi模块。

首先,要讲的是如何在Apache里配置使得其可以运行Python脚本。Apache虚拟机的设置有点儿复杂,特别是Ubuntu下,Ubuntu自己设置了许多个文件夹,导致设置更加复杂了。由于我不是很熟悉,所以只讲比较通配的一种。

我这里假设你该安装的模块都已经安装完毕了。

首先,是打开Apache的配置文件,Ubuntu下,这个文件不是http.conf,而是/etc/apache2/sites-available/default这个文件。

打开这个文件sudo nano /etc/apache2/sites-available/default

在DocumentRoot /var/www这一行下面,增加如下内容:

WSGIScriptAlias /weixin /var/www/weixin/code.py AddType text/html .py <Directory "/var/www/weixin"> AllowOverride None Order allow,deny allow from all </Directory>

然后保存。这里有个要讲的,weixin是我的一个python应用的目录,路径为/var/www/weixin,code.py是脚本

重启apache:sudo service apache2 restart

然后,最重要的地方出现了。

不知道你是否遇到过ImportError,就是你自己写的一些模块,Apache说找不到,你明明是引用了的。

所以,最最重要的,就是你在import web这句之前,一定要先写下面三句:

import os,syspath = os.path.dirname(os.path.realpath(__file__))

sys.path.append(path)

在你import web之后,还要加如下两句:

app = web.application(urls,globals(),autoreload=False)application = app.wsgifunc()

这样,你的应用应该就可以运行了

Apache下使用web.py要注意的地方

相关文章:

你感兴趣的文章:

标签云: