将django部署到Apache服务器

1、下载mod_wsgi.so :

下载地址:http://download.csdn.net/detail/xyw_eliot/5613957

将下载到的mod_wsgi.so 拷贝至apache安装目录下的modules目录下。

2、打开django工程所在的目录,新建wsgi文件:

在工程下新建文件:django.wsgi,记事本打开输入以下内容:

[plain]  view plain copy print ?
  1. import os  
  2. import sys  
  3. import django.core.handlers.wsgi  
  4. sys.path.append(r'E:/Project/wotserver')  
  5. #sys.path.append(r'E:/Project')  
  6. os.environ['DJANGO_SETTINGS_MODULE'] = 'wotserver.settings'  
  7. application = django.core.handlers.wsgi.WSGIHandler()  

其中,E:/Project/wotserver为我的django工程。下一行的wotserver.setting为我的工程下的setting文件,使用时根据实际情况换成自己的目录以及工程名。

3、修改django工程的setting.py配置文件:

[python]  view plain copy print ?
  1. MEDIA_ROOT = 'E:/Project/wotserver'  
  2. STATIC_ROOT = 'E:/Project/wotserver'  
  3. TEMPLATE_DIRS = (  
  4.     "E:/Project/wotserver/templates",  
  5. )  

E:/Project/wotserver改成自己的目录。至此,django工程配置完成,下面需要配置apache。

4、配置apache

打开apache安装目录下conf,找到httpd.conf文件。

(1)找到LoadModule那一段,添加:

[plain]  view plain copy print ?
  1. LoadModule wsgi_module modules/mod_wsgi.so  
  2. WSGIScriptAlias / "E:/Project/wotserver/django.wsgi"  
其中E:/Project/wotserver/django.wsgi,是在在配置项目时建立的django.wsgi文件所在的目录。WSGIScriptAlias 有两个参数:(1)斜杠 / 表示访问路径为 “ / ” ,如:http://127.0.0.1:8080/,即根路径。(2)django.wsgi所在的目录

(2)找到Directory的配置区域,添加如下的一段配置:

[html]  view plain copy print ?
  1. <Directory "E:/Project/wotserver">  
  2.         Order deny,allow  
  3.         allow from all  
  4. </Directory>  
其中,E:/Project/wotserver是Django工程所在目录。

全部配置完成,此时启动apache就可以访问django工程了,注意此时访问的网址不再是默认的8000 端口,而是apache的服务端口,如80端口。

今天在换一台电脑(64位)重新部署的时候,遇到了问题:部署完成后无法启动Apache服务器,使用命令运行,报出错误:

Cannot load G:/Program Files/Program/Apache/modules/mod_wsgi.so into server:\xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3

最后发现以上提到的mod_wsgi.so 是32位的,而我的这台电脑安装的python是64位的,所以我尝试将python换成32位的,重新部署成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值