Web-18 BBS-1
2018-01-02 本文已影响26人
吕阳
web-18-2
- topic 详细页面
- 评论
web-18-3
- 阅读数量
- 导航栏
web-19-1
- 板块
- 安全
- CSRF
token
删除验证token
token和用户绑定存在服务器 - XSS
www.jsfuck.com
不要加safe
关闭js访问cookie
web-19-2
- 部署到服务器
- wigi.py
- gunicorn
- supervisor
- nginx
- nginx监听80端口所以请求都是nginx得到然后转发给后台的gunicorn
配置没看懂。
配置软链接没看懂。
web-20-1
nginx : http server
gunicorn: http server
wsgi: 包装出来一个app
nginx gunicorn?
data -> nginx -> gunicorn -> wsgi -> app ?
- 反向代理
gunicorn 2000
gunicorn 2002
nginx 80 - 负载均衡
haproxy 去访问google.com - 静态文件托管
send_by_directory 每次都send很不好
配置了一个rule,保存在nginx的缓存,不会走到app这一层 - 缓冲
traffic busy
缓冲负载
19-2部署全流程
-
coding.net创建项目
微信截图_20180101143359.png -
点击SSH,复制地址 git@git.coding.net:tylvyang/bbs.git
微信截图_20180101143729.png
-
从coding.net克隆到本地
微信截图_20180101144350.png -
从本地add到github
微信截图_20180101144614.png -
手动把bbs上的代码复制到webbbs目录里,然后commit to master 然后 Sync
微信截图_20180101145155.png -
登陆服务器,克隆到服务器
微信截图_20180101145823.png -
添加wsgi文件,没必要在supervisor和nginx下面创建conf文件。
用软链接链接到自己的项目文件下面。
相当于文件在项目里面,在supervisor和nginx创建了快捷方式
#!/usr/bin/env python3
import sys
from os.path import abspath
from os.path import dirname
import app
sys.path.insert(0, abspath(dirname(__file__)))
application = app.app
"""
建立一个软连接
ln -s /var/www/bbs/bbs.conf /etc/supervisor/conf.d/bbs.conf
ln -s /var/www/bbs/bbs.nginx /etc/nginx/sites-enabled/bbs
➜ ~ cat /etc/supervisor/conf.d/bbs.conf
[program:bbs]
command=/usr/local/bin/gunicorn wsgi --bind 0.0.0.0:2001 --pid /tmp/bbs.pid
directory=/var/www/bbs
autostart=true
autorestart=true
/usr/local/bin/gunicorn wsgi
--bind 0.0.0.0:2001
--pid /tmp/bbs.pid
"""
-
添加了bbs.conf,然后上传,最后在服务器git pull,下图,添加软链接
微信截图_20180101154048.png
- service supervisor restart 运行服务器。
ufw allow 2001 防火墙允许2001 端口