首先安装python3
安装python3后安装宝塔面板
Centos安装脚本 :
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
等待安装,安装完成后登录面板(如不能登录请查看端口是否放行:8888)
软件管理中安装Nginx
在宝塔界面添加网站
设置好域名,数据库,php版本选择纯静态(不管也行)--> 域名已解析
在本地的flask应用文件打包上传到刚刚创建的web文件中,解压:例如
创建项目虚拟环境(在创建的网站目录)
由于安装python3是已经安装了virtualenv,使用命令操作
$ cd /www/wwwroot/你的项目文件夹 # 文件夹为创建的名字根目录
$ python3 -m venv tl_env
# 进入虚拟环境
$ source venv/bin/activate
# 安装uWSGI和requirements
$ pip install uwsgi
$ pip install -r requirements.txt
# 退出虚拟环境
$ deactivate
配置config.ini
放到网站根目录中
[uwsgi]
socket = 127.0.0.1:5000 # 项目内部端口号(必须与nginx相同)
chdir = /www/wwwroot/ss.specimen.vip
# 指向网站目录(根)
wsgi-file = manufacture.py # 项目启动文件名
callable = cms_app # 项目中以启动的变量名(如:app/application ),根据你的实际情况填写
processes = 2 # 处理器数,根据你的实际情况填写
threads = 4 # 线程数
stats = 127.0.0.1:9191 #状态检测地址,注意服务器提供商和宝塔的端口放行策略
配置Nginx
在宝塔面板中-->管理网站-->设置-->配置文件 替换为⬇:
server {
listen 80; #若有多个web应用,都是80端口监听
server_name ss.specimen.vip; #你的网址地址
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:5000; # 指向uwsgi 所应用的内部地址,所有请求将转发给uwsgi 处理
uwsgi_param UWSGI_PYHOME /www/wwwroot/ss.specimen.vip/venv; # 指向虚拟环境目录
uwsgi_param UWSGI_CHDIR /www/wwwroot/ss.specimen.vip; # 指向网站根目录
uwsgi_param UWSGI_SCRIPT manufacture:cms_app; # 指定启动程序,manufacture是manufacture.py前部分,cms_app是程序内用以启动的 application 变量名
}
}
例如:
重新启动服务
方法(nginx):
宝塔面板软件管理中重启nginx; (推荐)
修改配置后重新加载生效: nginx -s reload
方法(uwsgi):
进入虚拟环境命令: source venv/bin/activate
启动uwagi命令: uwsgi config.ini (如果不报错就表示成功了!)
最后后台挂器服务就OK了
uwsgi -d --ini config.ini
网页上就可以正常访问了,若不能正常访问,请查看相应端口是否放行!