windows+Apache部署django项目

来源:互联网 发布:最近网络贷款诈骗案例 编辑:程序博客网 时间:2024/05/16 11:02

花了我一天的时间到处百度谷歌问大神,终于部署成功了我的Django项目……在此抱怨windows作为生存环境的恶劣条件……

此处只显示我所经过的流程,由于没有实时记录所以安装下载还是结合虫师点这里跳转以及LogMe的步骤点这里跳转一起看。

简单的所需下载内容:

  • Apache2.22下载,一步步next,遇到server Domain/serverName可以随便填写,注意格式,之后可在httpd配置文件修改,不用太在意
  • mod_wsgi-3.2.ap2.2.win32-py2.7 下载,为什么下载这版:①py2.7-amd64的zip没有直接编译可供Apache modules用的mod_wsgi.so文件,自己编译麻烦。②Apache2.4常用于搭配python2.7+win64(指python64位非操作系统),故下降版本至Apache2.22,更具体的解释 LogMe已指出,包括为何使用wsgi是因为django1.10之后放弃fcgi、而uwsgi并不为windows支持(无uname模块)而不适合nginx。

Apache本身达成 ‘it works’是非常容易的,按步骤next改自己的安装路径到finish基本就成功了,注意一下原始的80端口,换成别的比较合适。

配置httpd

httpd.conf文件中

35: ServerRoot "D:/code_zx/apa"   # Apache安装路径 apa内为bin,cgi_bin 所在地
46:Listen 8024  # 项目所在地
129:LoadModule wsgi_module modules/mod_wsgi.so  # 新增,mod_wsgi模块
WSGIScriptAlias / D:/code_zx/clue_proj/clue_proj/wsgi.py   # 指定你项目的wsgi.py路径WSGIPythonPath D:/code_zx/clue_proj/WSGIPythonHome D:/python#新增部分<Directory D:/code_zx/clue_proj/clue_proj> # 项目wsgi文件路径<Files wsgi.py>    #Require all granted   # 这条语句为Apache2.4专用,改为下一行    Allow from all</Files></Directory># 静态文件路径<Directory  "D:/baidu_code_zx/clue_proj/app/static/"> # 注意静态文件夹路径后的‘/’,关系到Apache加载django 后台站点时css样式    Order deny,allow    Allow from all</Directory>Alias /static/   "D:/baidu_code_zx/clue_proj/app/static/"  # 同上条注释ServerName  你的ip地址:你想要开的项目端口
# HTML文件所在路径DocumentRoot "D:/baidu_code_zx/clue_proj/app/templates"
240:#Options Indexes FollowSymLinks 替换为Options None 目的是放置服务器展现文件列表   Options None

ps:静态文件路径 相关项目settings:

#settings.pySTATIC_ROOT = "D:/baidu_code_zx/clue_proj/app/static/" # 指向你新建的static文件用于放置引用的静态文件python manage.py collectstatic

该命令会提示你是否引用静态文件到你自己的项目,与你自己项目使用图片,js引用的静态文件路径不同(这个是STATIC_URL = 'XXX/你的静态文件夹/')


全文观察下所有带路径的行,替换成你所对应的路径 比如 ‘C:/Apache2/cgi_bin‘ 替换为 ‘D:/code_zx/apa/cgi_bin‘

Apache 创建服务:cmd进入到Apache/bin/目录中 httpd.exe -k install  Apache2.2    # 不要进入文件夹直接双击

Apache 开启服务:计算机右键选择‘管理‘ 进入服务 启动或 httpd.exe -k start(已启动的用该命令会报套接字相关的错)

Apache 服务删除:重新来过 选择进入cmd,命令 sc delete 服务名

Apache重启动出错可在‘’事件查看器-windows日志-应用程序‘’查看错误记录或者 Apache/logs/中查看errors.log。



总体还是多试,多查,网上有很多都是直接抄了别人的链接复制,我这部分也是网上搜了很久才部署成功,可惜没有一边执行一边记录步骤,不然就会更加有条理,完整。