Apache运行Django项目

虽然,在Django项目中,内置了web服务器。利用manage.py runserver即可运行。

但是,当项目规模一旦加大,内置的服务器显然是不能够满足实际需要的。需要利用Apache服务器。

首先,需要下载mod_wsgi.so放入apache的module目录下。mod_wsgi的下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

然后,再在项目中新建django.wsgi文件,写入(有些参数自己根据实际情况修改):

import os, sys
import django.core.handlers.wsgi
sys.path.append('f:/WebWorkspace/EasyBugSolution/EasyBugSolution1')
os.environ['DJANGO_SETTINGS_MODULE'] = 'EasyBugSolution1.settings'
application = django.core.handlers.wsgi.WSGIHandler()

然后,再在apache的httpd.conf中加入:

LoadModule wsgi_module modules/mod_wsgi.so
WSGIScriptAlias / "F:/WebWorkspace/EasyBugSolution/EasyBugSolution1/django.wsgi"

最后,新建虚拟主机:

<VirtualHost *:8080>
   DocumentRoot "f:/WebWorkspace/EasyBugSolution/EasyBugSolution1"
   ServerName .local

   # This should be omitted in the production environment
   SetEnv APPLICATION_ENV development

   <Directory "f:/WebWorkspace/EasyBugSolution/EasyBugSolution1">
       Options Indexes MultiViews FollowSymLinks
       AllowOverride All
       Order allow,deny
       Allow from all
   </Directory>

</VirtualHost>

并将http.conf中<Directory>下的:

#Order deny,allow
#Deny from All


如此注释掉即可。


PS:

切莫在64位的系统上装32位的apache+64位python解释器,不然你就不知道是选32位的mod_wsgi还是64位的mod_wsgi。事实证明,会两种都无法无法加载。

我就是这样的,后来把apache和python统一为32位后才成功。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值