博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python3 Flask+nginx+Gunicorn部署(下)
阅读量:1826 次
发布时间:2019-04-25

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

如果未看到上一篇文章的话,请先点击这里:


继续上一篇文章,在上一篇文章中,我们已经把gunicornnginx运行并且安装好了,在这一篇,我们需要进行nginx与gunicorn端口进行绑定

上一篇,我们已经将gunicorn运行起来了

gunicorn -w 4 -b 127.0.0.1:8000 入口文件名:app

nginx操作目录:

/usr/local/nginx/sbin

在/usr/local/nginx/sbin目录下可以进行nginx的重启、重载、停止与启动。

在这里我们进行通过nginx反向代理网站域名与服务器,这里可能说得有些绕口,

通俗点:

就是别人访问我们的网站,是通过nginx反向代理再把访问请求发送到flask服务器上的。

首先我们设置一下nginx的配置文件

cd /usr/local/nginx/confvi nginx.conf

然后打开配置文件:

#gzip  on;    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    server {        listen       80;        server_name  www.00reso.com;        #charset koi8-r;        #access_log  logs/host.access.log  main;        location / {           # root   html;           # index  index.html index.htm;            proxy_pass http://127.0.0.1:8000;            access_log /home/admin/api_access.log;            proxy_read_timeout 60;            error_log  /home/admin/api_error.log;        }

主要动的地方:

#gzip  on;# 1代理的设置吧,这个都是这样设置的proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 2绑定的域名server_name  www.00reso.com;# 3 监听本服务器的端口,设置log,请求时间等proxy_pass http://127.0.0.1:8000;            access_log /home/admin/api_access.log;            proxy_read_timeout 60;            error_log  /home/admin/api_error.log;

然后进行保存。

接下来重载一下nginx文件,在/usr/local/nginx/sbin/nginx下

使用命令:

sudo nginx -t

如果看到

1 nginx: the configuration file /etc/nginx/nginx.conf syntax is ok2 nginx: configuration file /etc/nginx/nginx.conf test is successful

就是代表成功了。

重新启动下nginx

sudo service nginx restart

这里重启nginx的命令可能会行不通,这时候,你用

ps -e aux|grep nginx 把nginx的进程杀掉,

然后在 /usr/local/nginx/sbin目录下再次启动nginx

nginx

如果看到:

[admin@izbp11722iq94py8qx691sz conf]$ ps -e aux|grep nginxroot      2657  0.0  0.0  24952   784 ?        Ss   Jun25   0:00 nginx: master process nginxnobody    2658  0.0  0.1  25388  1752 ?        S    Jun25   0:00 nginx: worker processadmin    13814  0.0  0.0 112664   968 pts/2    S+   20:59   0:00 grep --color=auto nginx

这个情况,就是启动nginx成功了,

验证

1 使用本地ping

curl localhost:80

如果出现flask index页面的内容,就表示nginx与gunicorn配置成功,

2 远程直接输入www.00reso.com 看是否能进行访问,如果没有出现失败的页面,则访问成功,如果出现失败的页面,则大多是防火墙或80端口关闭了,这里我们需要把防火墙打开。

编辑防火墙白名单

[root@localhost ~]# vim /etc/sysconfig/iptables增加下面一行代码-A INPUT -p tcp -m state -- state NEW -m tcp --dport 80 -j ACCEPT保存退出,重启防火墙[root@localhost ~]# service iptables restart

image.png

这样就可以进行访问了,

欢迎大家访问我的个人网站:
www.00reso.com
目前自己还在探索中,现在在快马加鞭的优化中,

因为flask+nginx+gunicorn部署自己踩过了很多坑,但是从坑中踩过来,差不多就都懂了。还好没放弃~~

adTime:

更多教程请访问:

「蛇崽网盘教程资源」公s众s号 ,在微sssd信2后台回复「领取资源」,获取IT资源200G干货大全。

在微阿斯顿发信后台回复「130个小程序」,即可免费领取享有导入就能跑的微信小程序

在微发电房信后台回复「Flutter移动电商」,即可免费领取Flutter移动电商系列全套

在这里插入图片描述

感谢以下的参考资料:

https://www.cnblogs.com/shenckicc/p/7003242.html?utm_source=itdadao&utm_medium=referral
https://www.cnblogs.com/taiyonghai/p/6728707.html
http://www.vuln.cn/8832

你可能感兴趣的文章
struts2中<s:if>标签的使用
查看>>
js 刷新页面window.location.reload();
查看>>
【转】EasyUI 验证
查看>>
java开发时内存溢出问题
查看>>
【easyui】combobox 关于省市联动
查看>>
启动mysql时,提示“Another MySQL daemon already running with the same unix socket.”解决方法
查看>>
设置csdn皮肤方法,更改自己喜欢的老版皮肤
查看>>
Eclipse中无法查看JDK源码,解决方法
查看>>
Linux下yum安装Mysql数据库,及启动时报“[ERROR] Fatal error: Can't open and lock privilege tables
查看>>
Git操作常用口令
查看>>
IDEA去除掉虚线,波浪线,和下划线实线的方法
查看>>
MYSQL新特性secure_file_priv 读写文件
查看>>
idea中的一些常用快捷键
查看>>
最值得拥有的免费Bootstrap后台管理模板
查看>>
Django获取请求头信息和返回json数据
查看>>
Django项目实战----点击商品分类查询出商品和销量排行
查看>>
Django项目实战---搜索引擎Elasticsearch
查看>>
Django实战----页面静态化
查看>>
Django实战---商城购物车的增删改、显示和合并购物车
查看>>
Django项目实战----订单页面的显示和生成订单、提交订单的逻辑
查看>>