nginx+uwsgi部署flask(新)
2015-12-02 00:00
513 查看
可以直接yum install uwsgi uwsgi-plugin-python安装
uwsgi-plugin-python是必不可少了
否则uwsgi的log日志会提示– unavailable modifier requested: 0
然后nginx配置文件
flask 入口文件app.py
uwsgi app.xml配置文件
uWSGI /usr/local/bin/uwsgiser管理脚本
这样可直接通过uwsgiser start/stop/restart
如果启动提示 unable to load app 0 (mountpoint='') (callable not found or import error)
则把run.py里面按照如下修改
uwsgi-plugin-python是必不可少了
否则uwsgi的log日志会提示– unavailable modifier requested: 0
然后nginx配置文件
server { listen 80; server_name localhost; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:9090; } }
flask 入口文件app.py
#!/usr/bin/env python #coding:utf-8 from flask import Flask app = Flask(__name__) app.debug = True @app.route('/') def hello(): return "Hello World!" if __name__ == '__main__': app.run()
uwsgi app.xml配置文件
<uwsgi> <pythonpath>/home/webapp/flaskapp</pythonpath> #网站根目录 <module>app</module> #Flask的主入口文件,即上面的app.py <callable>app</callable> #app.py里面的程序入口 <socket>127.0.0.1:9090</socket> #socke或者端口 <master/> <plugins>python</plugins> <processes>4</processes> #进程数 <memory-report/> </uwsgi>
uWSGI /usr/local/bin/uwsgiser管理脚本
#!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH # Check if user is root if [ $(id -u) != "0" ]; then printf "Error: You must be root to run this script!\n" exit 1 fi if [ "$1" = "start" ]; then psid=`ps aux|grep "uwsgi"|grep -v "grep"|wc -l` if [ $psid -gt 2 ];then echo "uwsgi is running!" exit 0 else /usr/sbin/uwsgi -s 127.0.0.1:9090 -M -p 4 -t 30 -x app.xml --limit-as 128 -R 10000 --plugin python -d /var/log/uwsgi.log /usr/local/nginx/sbin/nginx -s reload fi echo "Start uwsgi service [OK]" elif [ "$1" = "stop" ];then killall -9 uwsgi echo "Stop uwsgi service [OK]" elif [ "$1" = "restart" ];then killall -9 uwsgi /usr/sbin/uwsgi -s 127.0.0.1:9090 -M -p 4 -t 30 -x app.xml --limit-as 128 -R 10000 --plugin python -d /var/log/uwsgi.log /usr/local/nginx/sbin/nginx -s reload echo "Restart uwsgi service [OK]" else echo "Usages: uwsgiserver [start|stop|restart]" fi
这样可直接通过uwsgiser start/stop/restart
如果启动提示 unable to load app 0 (mountpoint='') (callable not found or import error)
则把run.py里面按照如下修改
# coding: utf-8 # __author__ = 'hex' from app import app if __name__ == "__main__": # 增加的这行 app.run(host='0.0.0.0',debug=True)
相关文章推荐
- nginx location配置详解
- nginx转发urlencode编码
- Nginx/LVS/HAProxy负载均衡软件的优缺点详解
- lvs、haproxy、nginx 负载均衡的比较分析
- Linux 下的Nginx的下载与安装
- windows下配置nginx+php环境
- 使用Nginx作为负载均衡器
- nginx 源码学习笔记(十五)—— ngx_master_process_cycle 多进程(一)
- nginx源码分析—全局变量ngx_cycle的初始化
- nginx报错
- PHP程序安装,与nginx的web连接,与MySQL数据库连接
- Centos 7安装Nginx 1.12.2
- Nginx的web功能安装
- ganalia+php+nginx+rrd 监控hadoop
- Nginx入门教程
- nginx的高级配置(3)——日志管理
- nginx学习2——常用命令操作
- nginx学习3——nginx进程
- Nginx新手指南
- 简单配置nginx+uWSGI+python3+bottle环境新手教程