1,纯mod_python
安装mod-python : $ apt-get install libapache2-mod-python
我们在/etc/apache2/mods-available/目录下面新建一个python.conf来配置和python相关的应用的信息
<Directory /var/www>
AlllowOverride none
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
AddType text/html;qs=1.0 .py
AddType text/html;qs=0.9 .html
AddType text/html;qs=0.8 .txt
</Directory>
最后的3行比较重要,像我这里用firefox浏览的时候,不能解析文档,而变成直接下载文件了。
同时,使用在conf文件里添加:
Alias / /var/www/
详见mod_python 中文文档 http://wiki.woodpecker.org.cn/moin/modpythoncn#A4.5_apache-----.2Bi7.2BV7g-apache.2BdoRRhZDo-
2.django +wsgi
https://library.linode.com/frameworks/django-apache-mod-wsgi/ubuntu-10.04-lucid
本来觉得部署会很简单 只需要输入几个命令就好了~结果纠结了很久,现在就写出老吧
首先 python 已经安装好了 所以第一步安装easy_install ,
然后用easy_install 安装django (注意 如果用非root用户安装,django会安装在当前用户的.local目录下,这样apache 会访问不到他....)
所以这时,也可以用ubantu的apt-get 来安装。这时会存放在python安装目录下。/usr/lib/python....
再然后就是直接apt-get 安装wsgi,
配置时,django 项目中的.wsgi文件注意要添加 项目目录与django目录。
wsgi文件:
import os
import sys
sys.path.append('/home/xiaopai/WORK/mysite/hello_django1/')
sys.path.append('/home/xiaopai/.local/lib/python2.7/site-packages/Django-1.5.2-py2.7.egg/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'hello_django.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
apache 配置文件
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/xiaopai/WORK/mysite/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/xiaopai/WORK/mysite/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
WSGIScriptAlias / /home/xiaopai/WORK/mysite/hello_django1/apache/django.wsgi
<Directory /home/xiaopai/WORK/mysite/hello_django1>
Order allow,deny
allow from all
</Directory>
ErrorLog /home/xiaopai/WORK/mysite/hello_django1/apache/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /home/xiaopai/WORK/mysite/hello_django1/apache/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
这样就搞定了~~说起来简单,但是一个bug就浪费好多时间啊.....