将django部署到Apache服务器

来源:互联网 发布:光翼学园网络班有用吗 编辑:程序博客网 时间:2024/05/22 15:01

1、下载mod_wsgi.so :

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

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

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

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

[plain] view plaincopyprint?
  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 plaincopyprint?
  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 plaincopyprint?
  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 plaincopyprint?
  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
原创粉丝点击