网站首页 > 精选教程 正文
系列目录
云服务器部署1【Nginx、Supervisor、Flask、Python】
前言
在上一篇文章已经讲解记录了在云服务器通过安装Nginx、Supervisor部署python Flask的步骤。
本篇文章,在上一篇文章的基础上,准备再增加一个新的域名。上一篇已经支持了demo.2019club.cn,那么这一篇准备同时支持域名test.2019club.cn
环境
系统:Ubuntu 16.04.1 LTS
服务器:腾讯云服务器(也适用于阿里云服务器,笔者亲测)
域名解析
回到我的云服务管理后台,进入域名解析列表
点击箭头所指的“解析”按钮
点击箭头所指的“添加记录”按钮
主机记录项输入二级域名,这里我的是test,记录值项填写云服务器的公网IP地址,然后点击“保存”按钮。
测试一下二级域名是否成功解析到云服务器
可以看到已经成功解析到云服务器。
新建Flask引用
执行指令,新建并网站根目录
$mkdir test
$cd test
执行以下指令
$virtualenv -p python3 venv
$source venv/bin/activate
$pip install flask
$pip install flask_script
$pip install uwsgi
$vim manage.py
文件manage.py内容如下:
from flask import Flask from flask_script import Manager app = Flask(__name__) manager = Manager(app) @app.route('/') def index(): return 'Hello 欢迎关注头条号@玖零大壮' if __name__ == '__main__': manager.run()
稳妥起见,运行一下manage.py,检查程序是否有问题
执行指令
$python manage.py runserver
程序没有问题。执行指令,退出虚拟环境
$deactivate
新建uWSGI配置文件
执行指令
$vim uconfig.ini
文件uconfig.ini内容如下:
[uwsgi]
# 配置多域名时,端口号记得要不同
socket=127.0.0.1:9001
# 指向项目目录,这里的目录是我们的程序的根目录
chdir=/home/ubuntu/webroot/test/
# flask启动程序文件
wsgi-file=manage.py
# flask在manage.py文件中的app名
callable=app
# 处理器数,我的服务器是单核双线程的
# 不知道的话,写1就没问题
processes=1
# 线程数
threads=2
【【特别注意】】:当配置多域名时,最重要的就是要改变这个端口号了,我上一篇使用的端口号是9000,这里我使用9001。当然你也可以使用其它的端口号,只要注意端口号不被占用或者不是特殊程序使用的端口号就行。
新建Supervisor配置文件
执行指令
$vim supervisor_test.conf
文件supervisor_test.conf内容如下:
[program:test] # 启动命令入口 command=/home/ubuntu/webroot/test/venv/bin/uwsgi /home/ubuntu/webroot/test/uconfig.ini # 命令程序所在目录 directory=/home/ubuntu/webroot/test/ # 运行命令的用户名 user=root autostart=true autorestart=true #日志路径 stdout_logfile=/home/ubuntu/webroot/test/uwsgi_supervisor.log
执行指令
$sudo mv supervisor_test.conf /etc/supervisor/conf.d/
$sudo service supervisor restart
新建Nginx配置文件
执行指令
$vim test_2019club_cn
文件test_2019club_cn内容如下:
server {
listen 80;
server_name test.2019club.cn;
location / {
uwsgi_pass127.0.0.1:9001;#和uconfig.ini中的socket地址保持一致
includeuwsgi_params;
uwsgi_param UWSGI_PYHOME /home/ubuntu/webroot/test/venv;#指向虚拟环境目录
uwsgi_param UWSGI_CHDIR/home/ubuntu/webroot/test;#指向网站根目录
uwsgi_param UWSGI_SCRIPT manage:app;#指定启动程序
}
}
执行指令
$sudo mv test_2019club_cn /etc/nginx/sites-available/ $sudo ln -s /etc/nginx/sites-available/test_2019club_cn /etc/nginx/sites-enabled/test_2019club_cn $sudo service nginx restart
下面可以测试一下二级域名是否可用了。
结语
到这里为止,云服务器部署支持多个Flask应用的步骤已经演示完毕,如有问题,随时指正。对你有帮助也请给我点个赞,谢谢。
【@玖零大壮 转载附带信息 起始】
//*****************************************************************
//作者原创,转载如未携带此段信息,侵权必究!
//作者:玖零大壮
//头条号@玖零大壮
//公众号@玖零大壮
//原文链接:https://www.toutiao.com/i6668865832044462596/
//*****************************************************************
【@玖零大壮 转载附带信息 结束】
猜你喜欢
- 2024-09-29 详解nginx 多站点配置方法 nginx配置多个网站
- 2024-09-29 Nginx配置多个网站/项目的简单方式
- 2024-09-29 详解如何使用nginx来为一台服务器部署多个Web Server
- 2024-09-29 Eleght科技:Nginx基于域名以及多域名的虚拟主机部署详细教程
你 发表评论:
欢迎- 最近发表
-
- 我的世界光影MOD下载(我的世界光影mod下载安装)
- 我的世界1.7/1.8VoxelMap小地图MOD下载
- 我的世界1.7.10多世界 整合包(我的世界1.7.10forge整合包)
- 我的世界1.8最好用的修改器下载(我的世界1.8最好用的修改器下载安装)
- 我的世界更多弯曲动作MOD下载(我的世界更多弯曲动作mod下载手机版)
- 我的世界龙珠MOD下载(我的世界龙珠模组整合包下载)
- 我的世界1.7.10以太2 下载(我的世界以太2mod1.12.2)
- 我的世界虚拟人生MOD下载分享(我的世界虚拟人生下载安装)
- 我的世界无正版账号的简单联机方法(非网易版,仅适用于局域网)
- “我的语言极限,即是我的世界的极限。” ——《On Java》书籍推荐
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)