Win配置Apache+mod_wsgi+django环境+域名
Python是落落的最爱,Django是Python web framework中的佼佼者,所以一直超爱。当然,Python web server也有N多选择,这里落落使用Apache+mod_wsgi来配置(也有用apache+mod_Python来配置的,不过貌似在Out中……)。如果有朋友是Google或者Baidu过来想了解下是怎样配置的,也许落落这篇博文可以帮到你。
首先讲下落落使用的软件版本:
Winxp
Apache(2.2,xampp1.7.3) 下载地址
django(1.1.1) 下载地址
mod_wsgi(mod_wsgi-win32-ap22py26-3.0 ) 下载地址
安装配置步骤:
1、 选择与自己python相匹配的mod_wsgi下载,重命名为mod_wsgi.so并丢到Apache安装目录里的modules 文件夹中。
2、 在Apache配置文件httpd.conf中,增加一行:
LoadModule wsgi_module modules/mod_wsgi.so
3、 配置域名
进入apache\conf\extra目录,在httpd-vhosts.conf 文件中添加以下内容:
<VirtualHost *:80>ServerName codeluo.com #测试域名 ServerAlias www.codeluo.com #测试域名 DocumentRoot F:/htdocs WSGIScriptAlias / F:/htdocs/demo/conf/demo.wsgi Alias /static F:/htdocs/demo/static <Location "/static"> SetHandler None </Location> <Directory " F:/htdocs/demo/static"> Order Deny,Allow Allow from all </Directory> <Directory " F:/htdocs/demo/wsgi"> Order Deny,Allow Allow from all </Directory> <Directory "/usr/local/lib/site-packages/django/contrib/admin/media"> Order Deny,Allow Allow from all </Directory> Alias "/media" "/usr/local/lib/site-packages/django/contrib/admin/media" <Location "/media"> SetHandler None </Location> </VirtualHost>
*配置域名请确保
<1>C:\WINDOWS\system32\drivers\etc\hosts文件中添加”127.0.0.1 codeluo.com”(引号中的内容,其中codeluo.com可更换为你自己测试用的域名)
<2>apache\conf\extra目录httpd-vhosts.conf文件”#NameVirtualHost *:80”更改为NameVirtualHost *:80,即去掉前面的”#”。
4、 创建命名为demo(与之前配置命名相匹配)的项目,并在项目中新建conf文件夹,新建demo.wsgi文件,内容:
import os
import sys
sys.stdout = sys.stderr
from os.path import abspath, dirname, join
from site import addsitedir
from django.core.handlers.wsgi import WSGIHandler
sys.path.insert(0, abspath(join(dirname(__file__), "../")))
sys.path.insert(0, abspath(join(dirname(__file__), "../../")))
os.environ["DJANGO_SETTINGS_MODULE"] = "demo.settings " #your settings module
application = WSGIHandler()
*经落落测试,此文件中注释中不能使用中文,安全起见请勿使用非英文、数字之外字符。
5、重启apache,即可看到It worked!。
照着做 没有成功。唉
请问这一句是什么意思?
运行PYTHON程序是不是要在指定的目录下面运行哟?后缀是 .PY 还是什么?
你是指哪一句?
一般来说运行python程序是 python /path/pyfile.py 的形式,指定路径即可(当然也要有可执行权限)。python 脚本程序都是以.py后缀结尾的。
请问python27,django1.3,apache22,版本的怎么配置啊?一样吗?
我有段日子没玩django了,配置和部署应该没太大变化。