Win配置Apache+mod_wsgi+django环境+域名-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Win配置Apache+mod_wsgi+django环境+域名

简介:

转自:http://liluo.org/2010/05/win-apache-mod_wsgi-django-domain/

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__), "http://www.cnblogs.com/")))

os.environ["DJANGO_SETTINGS_MODULE"] = "demo.settings " #your settings module

application = WSGIHandler()

*经落落测试,此文件中注释中不能使用中文,安全起见请勿使用非英文、数字之外字符。

5、重启apache,即可看到It worked!。


==============================================================================
本文转自被遗忘的博客园博客,原文链接:http://www.cnblogs.com/rollenholt/articles/2389574.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章