django运行环境安装--mod_wsgi+apache

django运行环境安装--mod_wsgi+apache

 

作者:谭俊河 时间:2009-09-02

一、下载mod_wsgi:
 地址:http://code.google.com/p/modwsgi/
 
二、将mod_wsgi加入到apache中:
 1)将上一步下载的mod_wsgi-*.so放入到apache的modules目录下;
 2)编辑apache的httpd.conf文件,加入以下语句:
  LoadModule wsgi_module modules/mod_wsgi-*.so
 3)重启apache。

 

三、将mod_wsgi和django集成:
 1)创建django工程:
  django-admin.py startproject mysite
 2)创建django.wsgi文件:
  在mysite文件夹下创建文件夹wsgi;
  在wsgi文件夹下面创建django.wsgi文件,其内容为:
  
  # -*- coding:utf-8 -*-

  import os, sys
  
  #添加当前工程文件夹及其上层文件夹到sys.path中
  p1 = os.path.abspath(os.path.join(os.path.dirname(__file__), '../'))
  p2 = os.path.abspath(os.path.join(os.path.dirname(__file__), '../../'))
  sys.path.append(p1)
  sys.path.append(p2)
  #sys.path.append('D:/Python/Python26/Lib/site-packages/django')
  
  #重定向输出,如果有错误信息打印,或者调用print打印信息,将输出到apache的error.log日志文件中。
  sys.stdout = sys.stderr
  #print sys.path
  
  #配置设置文件
  os.environ['DJANGO_SETTINGS_MODULE'] = 'Test01.settings'
  
  import django.core.handlers.wsgi
  
  application = django.core.handlers.wsgi.WSGIHandler()
  
 3)如果静态资源(图片、css、js……)和django不在同一个服务器则在apache的httpd.conf文件中加入以下语句:
 
  WSGIScriptAlias / F:/download/my/python/Workspace/django/Test01/wsgi/django.wsgi

  <Directory F:/download/my/python/Workspace/django/Test01/wsgi>
  Order allow,deny
  Allow from all
  </Directory>
  
 4)如果静态资源(图片、css、js……)和django在同一个服务器则在apache的httpd.conf文件中加入以下语句:
 
  #下面是django的一些设置
  Alias /robots.txt F:/download/my/python/Workspace/django/Test01/static/robots.txt
  Alias /favicon.ico F:/download/my/python/Workspace/django/Test01/static/favicon.ico
  
  AliasMatch /([^/]*/.css) F:/download/my/python/Workspace/django/Test01/static/styles/$1
  AliasMatch /([^/]*/.js) F:/download/my/python/Workspace/django/Test01/static/scripts/$1
  
  Alias /media/ F:/download/my/python/Workspace/django/Test01/static/media/
  
  <Directory F:/download/my/python/Workspace/django/Test01/static>
  Order deny,allow
  Allow from all
  </Directory>
  
  WSGIScriptAlias / F:/download/my/python/Workspace/django/Test01/wsgi/django.wsgi
  
  <Directory F:/download/my/python/Workspace/django/Test01/wsgi>
  Order allow,deny
  Allow from all
  </Directory>
  
  5)管理模块的样式表和javascript以及图片调整
 
    在上一步中,对于django的管理模块有一个问题,那就是css,js,img不能正确被解释,弄了一天,想了一个折中的办法:
    1.将上面的apache配置文件修改为如下
   
      #下面是django的一些设置
    Alias /robots.txt F:/download/my/python/Workspace/django/Test01/static/robots.txt
    Alias /favicon.ico F:/download/my/python/Workspace/django/Test01/static/favicon.ico
    
    Alias /media/ F:/download/my/python/Workspace/django/Test01/static/media/    #位置提前了
    
    AliasMatch /([^/]*/.css) F:/download/my/python/Workspace/django/Test01/static/styles/$1
    AliasMatch /([^/]*/.js) F:/download/my/python/Workspace/django/Test01/static/scripts/$1
    
    <Directory F:/download/my/python/Workspace/django/Test01/static>
    Order deny,allow
    Allow from all
    </Directory>
    
    WSGIScriptAlias / F:/download/my/python/Workspace/django/Test01/wsgi/django.wsgi
    
    <Directory F:/download/my/python/Workspace/django/Test01/wsgi>
    Order allow,deny
    Allow from all
    </Directory>
    
  2.将django按照目录下的../django/contrib/admin/media里面的css,img,js三个文件夹,拷贝到工程目录对应的目录下:../static/media
  
四、补充说明
 这里只是在windows上面试验的结果,其中的一些路径需要更换为实际的路径;另外这只是一个简单的设置,具体操作参考:http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango
  

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值