python + Flask(静态资源) + uwsgi + nginx 布置项目

1、python 安装链接:

安装python

2、可以选择 创建虚拟环境来配置项目

	Python 

3、安装 uwsgi

	pip install uwsgi

4、项目创建 uwsgi.ini 文件: 文件内容

[uwsgi]
;http=0.0.0.0:5001      # http     是配置uwsgi 不配置nginx,配置好了之后可以在项目里 python3 + 启动文件   服务器IP + 端口 访问项目,可以用来测试项目是否正常运行,然后在配置 nginx 
socket=0.0.0.0:5001      # socket 这个是用来配置nginx的
#socket协议,用于和nginx通讯,端口可配置成别的端口;如果有nginx在uwsgi之前作为代理的话应该配socket   如:socket=0.0.0.0:5000,
#而如果客户端请求不经过(不搭建)Nginx代理服务器,服务请求直接到uwsgi服务器的话那么就配http。如:http=0.0.0.0:5000;IP和端口与项目启动文件app.py中一致; 127.0.0.1虽然是表示本地IP,但想要在网络上访问必须设置host=0.0.0.0才不受IP限制
#项目目录,定位到项目的第一层,具体配置根据实际目录情况而定,如项目名称为crawl_flask
chdir=/home/crawl_flask/
#项目启动文件,实际也可能不是这个命名(需要带上文件路径,视具体目录情况而定)
wsgi-file=/home/crawl_flask/main.py      # 项目启动文件    
static-map = /static=/home/crawl_flask/static/    # 项目静态资源
#程序内的application变量名,也即执行run方法的那个实例的名称
callable=app
#启动主进程,来管理其他进程,其它的uwsgi进程都是这个master进程的子进程,如果kill这个master进程,相当于重启所有的uwsgi进程。
master=true
#进程数
processes=4
#每个进程中线程数
threads=10
#使进程在后台运行,并将日志打到指定的日志文件,文件若不存在则会自动创建
daemonize=uwsgi.log
#不记录请求信息的日志,只记录错误以及uWSGI内部消息到日志中。如果不开启这项,日志中会大量请求记录:
disable-logging=true
#进程号存储文件,若不存在则会自动创建,pid里面只记录一个进程号,若存在多个进程processes,则使用uwsgi命令通过uwsgi.pid文件停止、重启uwsgi服务不全
pidfile=uwsgi.pid
#设置用于uwsgi包解析的内部缓存区大小为64k,默认是4k。不设置该关键字,请求超过4k就会报错,
buffer-size=65536
#超过时间,单位秒
harakiri=60
# 当服务器退出的时候自动清理环境
vacuum=True

5、配置nginx服务 找到文件 nginx.conf

	    server {
        listen       80;         # nginx的监听端口
        server_name  xx.xxxxxx.com;      # 域名
        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:5001;      # 监听成功后请求的ip端口,与uwsgi中socket的IP端口一致
        }
        location /static {
            alias   /home/crawl_flask/static;         # 静态资源配置
        }
    }

6、重启 nginx 服务

	service nginx restart    # 重启
	service nginx stop       # 停止
	service	nginx start     # 启动 

7、uwsgi 服务启动

	uwsgi --ini uwsgi.ini      # 启动项目 (第一次启动)
	uwsgi --reload uwsgi.pid   # 重启项目
	uwsgi --stop uwsgi.pid   # 停止项目
	uwsgi --start uwsgi.pid   # 启动项目

你可能感兴趣的:(Python---Flask,python,flask,nginx)