Django1.6 +wsgi 部署到Apache2 的步骤。
网上很多教程都是关于1.6之前的版本,很多都不适用,经历告诉我们最靠谱的还是官方文档。
一个Demo例子:
以 python shell开发的方式部署没有问题,但当独立部署到Apache2的过程非常艰辛
第一步:修改Apche2的默认端口号
Aapche2的默认端口号是80,首先进入apache的配置目录,
修改VirtuaHost的端口号为8088(因为我机器上的80跟8080都已经被占用了):
第二步:将本地网站发布到apache2
同样修改该文件:
WSGIScriptAlias 指向要发布的网站路径下创建项目时自动生成的wsgi.py文件
此时,重启apache服务,访问该网站会发现“内部错误”:
查看apache日志发现:
提示配置文件不存在。由此推测是路径出了问题。
第三步:修改网站下面的wsgi.py文件
默认情况下,Django自动生成的wsgi.py文件如下:
可能是因为我Project的名字(Hello)跟应用的名字一样的原因导致了Django不能正确识别配置文件的位置
去掉注释中的两行,重启apache2服务:
成功!