nginx中的配置
server {
listen 80;
root /www/demo;
server_name localhost;
location / {
proxy_set_header x-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://localhost:5000/; # gunicorn绑定的端口号
}
# 配置static的静态文件:
location ~ ^\/static\/.*$ {
root /www/demo;
}
}
gunicorn的配置文件gunicorn.py
import os
from multiprocessing import cpu_count
bind = "127.0.0.1:9000"
daemon = True
workers = cpu_count() * 2
worker_class = "gevent"
forwarded_allow_ips = '*'
keepalive = 6
timeout = 65
graceful_timeout = 10
worker_connections = 65535
gunicorn启动命令: gunicorn -c gunicorn.py manager:app
supervisor配置问题
# 安装好了supervisor之后再/etc下有两个文件,一个是supervisord.conf,这个是主要的配置文件,supervisord.d是放置自己配置文件的目录
# 如创建一个test.ini,必须是.ini为后缀名结尾,可以在supervisord.conf中的include之下更改
# test.py
[program:test]
command=/root/anaconda3/bin/gunicorn -c /root/gconfig.py test:app
directory=/root
user=root
autorestart=true
startretires=3
然后使用supervisorctl命令 supervisorctl update
开启supervisor: supervisord 如果有已经打开的,先关闭
开启supervisord报错, 使用python2开启,如: /usr/bin/python2.7 /usr/bin/supervisord -c /etc/supervisord.conf
# 配置supervisor可视化界面的坑
;[inet_http_server] ;HTTP服务器,提供web管理界面
;port=9001 ;Web管理后台运行的IP和端口,如果开放到公网,需要注意安全性
;username=user ;登录管理后台的用户名
;password=123 ;登录管理后台的密码
# 只需要将这一部分的 ; 去掉就行了, 主要port只需要端口号,不用ip,其它的有ip的都是坑(坑了我近几个小时,自己慢慢摸索出来的,其它的都加上了ip,但是启动supervisor的时候会报错,或者访问不了界面),亲测!!!!!!!!!!!!!!!!