介绍
这里首先要介绍一下轻量级的web框架 Flask
很多同学可能知道一些python的web框架 比如Django Tornado 等等,他们中各有优劣,大家可以根据需要来选择自己项目所使用的框架,对于这些框架的比较 我们回头可以单开一篇文章来讲解一下几个框架的优劣点。这篇文章我们主要讲解一下flask在服务端的安装,部署和运行
1、首先创建一个虚拟环境 我们利用的是virtualenv
pip3 install virtualenv
2、安装nginx 并启动
apt-get install nginx
/etc/init.d/nginx start
3、在nginx目录中 /var/www/xxxx 建立进入虚拟环境,安装python依赖的各种包
cd /var/www/python_web
virtualenv venv
.venv/bin/activate
pip3 install flask
pip3 install uwsgi
进入虚拟环境方法
source venv/bin/activate
4、把flask项目拷贝到虚拟环境下
5、删掉nginx的默认配置文件 替换我们的配置文件(在我们工程文件下建立 pyweb_nginx.conf)
server {
listen 80;
server_name 60.205.107.6;
charset utf-8;
client_max_body_size 75M;
location / { try_files $uri @yourapplication; }
location @yourapplication {
include uwsgi_params;
uwsgi_pass unix:/var/www/python_web/web_uwsgi.sock;
}
}
6、 link到Nginx配置文件夹中
sudo li -s /var/www/python_web/pyweb_nginx.conf /etc/nginx/conf.d/
7、建立uwsgi的配置文件 项目目录下 建立web_uwsgi.ini 文件 并赋值
[uwsgi]
#application's base folder
base = /var/www/python_web
#python module to import 我们的项目名称
app = main
module = %(app)
#venv是我们的虚拟环境
home = %(base)/venv
pythonpath = %(base)
#socket file's location
socket = /var/www/python_web/%n.sock
#permissions for the socket file
chmod-socket = 666
#the variable that holds a flask application inside the module imported at line #6
callable = app
#location of log files log存放的位置
logto = /var/log/uwsgi/%n.log
8、创建 /var/log/uwsgi/文件夹存放log日志
9、退出虚拟环境
deactivate 退出环境
运行uwsgi
nohup uwsgi --plugin python --ini /var/www/python_web/web_uwsgi.ini
#当我们用上面那条命令运行的时候,如果你关闭了终端,你的项目可能就会停止了,所以这里我们需要在后台运行
nohup uwsgi --plugin python --ini /var/www/python_web/web_uwsgi.ini & #后台运行
10、部署完毕 可以运行了