前记:在项目开发时,前后端是分开的且在同一个局域网内,当需要联合测试时,以局域网中第三台服务器的Centos系统配置Nginx监听前后端指定端口实现访问。项目测试完就可以到生产环境部署了。
用脚本进行部署:fab deploy
root用户才有put()权限,其他用户需要开放。
python安装virtualenv是在Scripy中安装virtualenv.exe,外部安装也行。
启动虚拟环境:./source Script activate
安装redis已经安装了,后台启动:redis-server &,加&跑在后台,不加的话关闭xshell就会马上停止。
部署静态资源,给服务器Nginx监听端口后指向
听说webstorm可以加密前端代码。更新host要重启chrome(加密)
可以将静态资源放在服务器Nginx找得到的目录(不一定在服务器)下。
将静态资源用gitbash anywhere或者二级Nginx跑在端口(不一定在服务器)上,服务器Nginx找得到。
关于vue的部署:
将vue跑在服务器Nginx可以找到的端口上(不一定在服务器),但是vue跑端口只能测试用,vue项目要通过打包发布。
将vue打包成静态资源,进行静态资源处理。
项目:vue大米进销存的二级Nginx配置
server {
listen 9999;
server_name test-dami.psi.shuhe.biz;
root ..first-test-vuedist;
location ~ .*.(gif|jpg|jpeg|png|bmp|swf|js|css)$ {
add_header Cache-Control no-store;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
项目:Bootstrap工资系统的服务器Nginx配置
server {
listen 8000;
server_name salary_youeryuan.com;
root ....salary_youeryuan_statics;
index html/index.html;
}
启动后端项目在端口,给服务器Nginx监听端口后指向
处理完环境问题,windows和centos好像可以共用虚拟环境。在虚拟环境下跑django项目,配置好数据库,就可以启动项目了。
/usr/bin/gunicorn -c gunicorn.conf.py dami.wsgi:application & 据说用配置文件方式跑比较好,且进一步还需要配合supervisor一起保护进程。
关于服务器Nginx配置代理域名时,80端口即配置中的'/',是指向前端还是后端
当指向后端,后端检查没登陆使用redirect跳到未登陆指定url即登陆的前端界面;
当指向前端前端,js查看是否有用户名或者其他条件,不通过就跳到登陆的前端界面,同时/*就需要后端Django项目提前在所有url前加个指定字符串,提供给服务器Nginx定向。