1.安装gunicorn
2.执行gunicorn命令,查看该命令是否正确执行,若无法执行,修改软连接。
#cd svn/ 切换到项目根目录,即与manage.py 同级
#执行gunicorn -w4 -b0.0.0.0:8001 generalWeb.wsgi
如果这里显示找不到gunicorn的问题,则执行下面的语句
#ln -s /usr/local/python3/bin/gunicorn /usr/bin/gunicorn
如果安装的django版本和开发使用的django的版本没有问题,则正确的执行结果如下,:
如果有问题,比如django版本不对照时,则会出现以下问题(models规则改变):
上述原因是因为新版本的django要求,外键关联时,必须指定,on_delete=models.CASCADE,
即resource=models.ForeignKey(T_Resources,on_delete=models.CASCADE,)
如果你的app里面的models里都有这个问题,请依次修改。
修改完成后启动,gunicorn启动正常。
但是打开浏览器,访问127.0.0.1:8000,发现再次报错。
上述错误指出,在新版的django中,你的项目urls.py文件需要更新(非app下的urls.py),即在项目的urls.py中使用include时务必添加第二个参数,即app名称。
打开项目的urls.py文件,进行修改:
将url(r'^rbac/', include('Rbac.urls', namespace='Rbac')),
修改为
url(r'^rbac/', include(('Rbac.urls','Rbac'), namespace='Rbac')),
注释:上面的include后的第一个参数用元祖传两个值,第二个值为app_name,之前的django版本不支持第二个值
保存文件,退出。
使用ctrl+c键退出gunicorn 控制台,再次运行之前的命令:
gunicorn -w4 -b0.0.0.0:8000 generalWeb.wsgi
ok,至此,gunicorn成功运行了django项目,唯一的问题就是静态资源找不到。
而静态资源的问题,我们就需要项目的setting文件和nginx的conf文件进行配合。
两者配合后,页面将正确展示!