博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安装配置gunicorn和NGINX的学习笔记
阅读量:7060 次
发布时间:2019-06-28

本文共 1345 字,大约阅读时间需要 4 分钟。

博客写得差不多了,打算部署到云上

因为速度的关系,不打算部署在AWS上,于是申请了阿里云,环境是上篇文章提到的CentOS 7 64位
安装和配置好Python3和MySQL,又稍微了解点web服务器的知识后,打算按的方法进行部署,思路是用gunicorn当应用容器,NGINX当反向代理

安装gunicorn

安装非常简单,一条pip命令就解决了

测试也很简单,写个简单的Flask英语存成.py文件,放到某个目录,然后用gunicorn去运行就好
这两点可以参考或
确定跑起来后,可以kill掉,需要时再启动
在gunicorn跑起来后会提示其pid,如果刷掉了,可以用netstat -plant或什么别的方式来确认
话说,用netstat -plant可以看到其进程对应的程序是python2,看起来gunicorn是python2写的

安装NGINX

我很幸运地没有去官网看文档,而是直接尝试了yum install nginx,就安装成功了(装python时就装了不少依赖包)

后来再看官方文档时,发现他们没说这种简单安装方式,而是麻烦地再去配置Repository page什么的
我看看自己的版本,是最新的Stable版,摊手

配置NGINX

按照的办法没搞定,无奈网上到处搜

从知道可以通过修改nginx.conf文件来完成反向代理的配置,不过文件的位置有点不同,我这里文件在/etc/nginx/目录,可能是版本不同导致的
打开发现里面有行include /etc/nginx/conf.d/*.conf;看上去是会导入其他配置文件的样子
那么我们去那个文件夹新建一个.conf文件,于是新建了/etc/nginx/conf.d/test.conf文件,其内容如下:

server {    listen       8000;    server_name  flasktest;    location / {            proxy_pass http://127.0.0.1:8000;    }}

改完后运行service nginx start发现报错

Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
于是又到处翻文章,偶然间用netstat -plant查看状态时发现gunicorn正在监听8000端口,心中隐隐觉得可能是这个导致的,关掉gunicorn试了下发现报错消失
和朋友沟通发现因为自己底子不扎实,不知道这个知识点:
TCP协议中,不算某进程fork出的子进程,或使用共享socket技术时,同一端口只能有一个进程监听

OK,那么把test.conf中端口改成7999,运行gunicorn,启动nginx服务,在浏览器里输入阿里云这台云服务器对应的公网IP加:7999

终于看到了熟悉的hello world
至此,部署gunicorn和NGINX基本完成,接下来就是部署博客

转载地址:http://fifll.baihongyu.com/

你可能感兴趣的文章
Controller
查看>>
1031 Hungar的得分问题(二)
查看>>
软件工程 第一个小例子
查看>>
X86 Booting Sequence
查看>>
python中xrange和range的异同
查看>>
服务器端升级为select模型处理多客户端
查看>>
IOC容器实例化过程
查看>>
android起源
查看>>
网页结构与表现原则
查看>>
MATLAB读取CCS保存的数据
查看>>
Java superArray2
查看>>
这几道Java集合框架面试题在面试中几乎必问
查看>>
HDU4545:魔法串(DP)
查看>>
协程补充
查看>>
ASS字幕制作和压制教程
查看>>
ccf 送货
查看>>
(27)回复泛型,注解、日志组件、枚举在实际项目中的使用
查看>>
安装配置Glusterfs
查看>>
分治法排序
查看>>
【WEBAPI】常用参数传递方法总结
查看>>