用mod_wsgi在Apache上部署Django

1.安装和配置Apache

  下载Apache2.2.4: wget http://mirror.bjtu.edu.cn/apache//httpd/httpd-2.2.24.tar.gz

   tar -xvf httpd-2.2.24.tar.gz

   cd httpd-2.2.24

   ./configure --prefix=/usr/server/apache2/
   make
   make install


2.安装mod_wsgi

下载地址:wget http://modwsgi.googlecode.com/files/mod_wsgi-3.4.tar.gz

1)解压缩

         sudo tar xvf mod_wsgi-3.4.tar.gz

2)配置mod_wsgi

    cd mod_wsgi-3.4

./configure --enable-shared  --with-apxs=/usr/server/apache2/bin/apxs --with-python=/usr/bin/python  CFLAGS=-fPIC LDFLAGS=-L. #apache安装位置,python安装位置动态链接库位置

注意python版本问题,如果按照上面的路径/usr/bin/python安装出错的话,请更改--with-python为合适的位置:

./configure --enable-shared  --with-apxs=/usr/server/apache2/bin/apxs --with-python=/application/app/Python-2.7.2/python  CFLAGS=-fPIC LDFLAGS=-L.

3)编译执行
    sudo make 
    sudo make install

3.配置Apache

在/usr/server/apache2/conf/httpd.conf中添加:

LoadModule wsgi_module modules/mod_wsgi.so #mod_wsgi.so的配置行

WSGIScriptAlias / "/application/search/test/wsgi.py" #wsgi文件的位置

WSGIPythonPath /application/search/lib/python2.7/site-packages #python site-packages安装的位置


<VirtualHost *:80>
    Alias /favicon.ico /application/search/test/static/favicon.ico

    <Directory "/application/search/test/">
    Order Deny,Allow
    Allow from all
    </Directory>

    Alias /media/ /application/search/test/media/
    Alias /static/ /application/search/test/static/

    <Directory  /application/search/test/media>
    Order deny,allow
    Allow from all
    IndexOptions FancyIndexing
    </Directory>


    <Directory  /application/search/test/static/ >
    Order deny,allow
    Allow from all
    IndexOptions FancyIndexing
    </Directory>
</VirtualHost>
Order deny,allow
Allow from all
IndexOptions FancyIndexing
</Directory>

<Directory  /application/search/test/static/ >
Order deny,allow
Allow from all
IndexOptions FancyIndexing
</Directory>

wsgi.py配置文件里面的内容是:

import sys
import os
import django.core.handlers.wsgi

sys.path.append('/application/search/test')
os.environ['DJANGO_SETTINGS_MODULE']='config.settings'
application = django.core.handlers.wsgi.WSGIHandler()


4.启动Apache

/usr/server/apache2/bin/apachectl start#启动apache

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值