Flask+uwsgi+Nginx环境搭建

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  1. 开源软件准备
    需要的软件列表:
    setuptools-33.1.1.zip
    Python-2.7.13.tgz
    pip-9.0.1.tar.gz
    nginx-1.10.3.tar.gz
    软件统一上传到/usr/local/src/下,python是使用自己编译的。
  2. Python安装

    先安装以下的软件(如果有的话,就可以不安装了,例如使用rpm -qa zlib-devel先查看下)
    yum install zlib-devel -y
    yum install openssl-devel -y

    tar -zxvf解压
    ./configure --prefix=/usr/local/python #安装到/usr/local/python目录下。
    make 
    make install

  3. setuptool和pip安装
    unzip解压setuptool
    /usr/local/python/bin/python setup.py install

    tar -zxvf解压pip
    /usr/local/python/bin/python setup.py install
     
  4. flask和uwsgi安装
    使用pip安装flask和uwsgi
    /usr/local/python/bin/pip install flask
    /usr/local/python/bin/pip install uwsgi
  5. nginx安装

    先安装pcre-devel:
    yum install pcre-devel -y

    ./configure --prefix=/usr/local/nginx
    make && make install

  6. nginx使用uwsgi配置

    cat /usr/local/nginx/conf/nginx.conf

    #user  nobody;
    worker_processes  1;events {worker_connections  1024;
    }http {include       mime.types;default_type  application/octet-stream;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';sendfile        on;keepalive_timeout  65;server {listen       8080;access_log  /usr/local/nginx/logs/flask_access.log main;error_log /usr/local/nginx/logs/flask_error.log error;client_max_body_size 200M;location / {include      uwsgi_params;uwsgi_pass   unix:/dev/shm/uwsgi.sock;index  index.html index.htm;}}}


    启动nginx:
    /usr/local/nginx/sbin/nginx  -t
    /usr/local/nginx/sbin/nginx

    注意:uwsgi_pass   unix:/dev/shm/uwsgi.sock;需要和uwsgi的配置相对应!

  7. uwsgi配置
    cat /root/uwsgi.ini
    [uwsgi]
    uid = root
    gid = root
    socket = /dev/shm/uwsgi.sock
    chmod-socket = 666
    enable-threads = true
    master = true
    plugins = /usr/local/python/bin/python
    vhost = true
    workers = 5
    max-requests = 1000
    pidfile = /var/run/uwsgi.pid
    daemonize = /var/log/uwsgi.log
    chdir = /root/ops_dev/
    module = ops_dev
    callable = app

    启动uwsgi,有些报错没什么事:
    /usr/local/python/bin/uwsgi /root/uwsgi.ini

  8. 编写测试样例进行测试

    cat /root/ops_dev/ops_dev.py

    # -*- coding: UTF-8 -*-
    from flask import Flask
    app = Flask(__name__)@app.route('/', methods=['GET', 'POST'])
    def index():return 'Hello  world,Python ops_dev!'

    编写完需要重启uwsgi,开改动代码都需要重启uwsgi,直接使用pkill进行重启即可:
    pkill uwsgi

    访问http://localhost:8080/进行测试。


    访问日志记录(nginx和uwsgi的访问日志,可用来排错。):


 

最后附上本人的网络课堂地址,如有兴趣请点击: 实践哥

转载于:https://my.oschina.net/zhuangweihong/blog/867214

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/541704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ofb模式_密码学中的输出反馈模式(OFB)

ofb模式This is an output feedback (OFB) mode is similar in structure to that of CFB in Cryptography. It is the output of the encryption function that is fed back to the shift register in OFB in the cryptography, whereas in CFB in the mode of blocks, the ci…

win8编程c语言,Win8系统怎么运行C语言 win8系统运行C语言的方法

C语言是一门通用计算机编程语言,是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言,但是许多win8系统用户并不知道要怎么运行C语言,针对这个情况,小编就给大家分享一…

Linux sudoers文件的写法

2019独角兽企业重金招聘Python工程师标准>>> 文件的组成 sudoers文件由三部分组成: sudoers的默认配置,主要设置sudo的一些缺省值(本文不会对这些默认配置进行介绍,若有兴趣可以自己man 5 sudoers然后搜defaults)alias…

设计模式(一)单例模式的七种写法

1. 饿汉模式 public class Singleton { private static Singleton instance new Singleton(); private Singleton (){}public static Singleton getInstance() { return instance; } } View Code这种方式在类加载时就完成了初始化,所以类加载较慢,…

智能关机软件 c语言,智能关机软件

智能关机软件是一款免费共享关机软件。智能关机软件不但具有定时关机、自动关机的功能,而且还可以进行定时提醒信息、打开文件、打开网页、重启计算机、注销用户、锁定计算机、计算机休眠、计算机待机、关闭显示器,并且可以进行多任务计划,可…

iOS开发之解决系统数字键盘无文字时delete键无法监听的技巧

最近在做用户登录获取验证码时添加图形验证码功能,就是只有正确输入图形验证码才能收到后台发送的短信验证码。效果如下: 看起来虽然是个小功能,但是实际操作起来,会发现苹果给我们留下的坑,当然更多的是自己给自己挖的…

连接fiddler后手机无法显示无网络

升级了fiddler到4.6版本,手机设置代理后提示无网络,试试以下解决方法: 1.fiddler升级后对应的.net framework也要升级,安装最新的.net framework 4.6,升级安装后,可以正确抓包啦 2.如果上述方法无效&#x…

android 图片叠加xml,Android实现图片叠加效果的两种方法

本文实例讲述了Android实现图片叠加效果的两种方法。,具体如下:效果图:第一种:第二种:第一种是通过canvas画出来的效果:public void first(View v) {// 防止出现Immutable bitmap passed to Canvas constructor错误Bit…

Win10系列:VC++ 定时器

计时器机制俗称"心跳",表示以特定的频率持续触发特定事件和执行特定程序的机制。在开发Windows应用商店应用的过程中,可以使用定义在Windows::UI::Xaml命名空间中的DispatcherTimer类来创建计时器。DispatcherTimer类包含了如下的成员&#xf…

dbms系统 rdbms_DBMS与传统文件系统之间的区别

dbms系统 rdbmsIntroduction 介绍 DBMS and Traditional file system have some advantages, disadvantages, applications, functions, features, components and uses. So, in this article, we will discuss these differences, advantages, disadvantages and many other …

android 百度地图api密钥,Android百度地图开发获取秘钥之SHA1

最近在做一个关于百度地图的开发。不过在正式开发之前还必须要在百度地图API官网里先申请秘钥,而在申请秘钥的过程中,就需要获取一个所谓的SHA1值。如上所示,但是由于不是正式开发,所以以上的发布版和开发版的SHA1可以先填写相同。…

华为荣耀七能升级鸿蒙系统吗,华为鸿蒙系统来了,你知道哪些华为手机荣耀手机可以升级吗?...

从鸿蒙系统第一次开始登场,到现在慢慢有许多鸿蒙系统设备出现,手机市场的格局似乎又要升级变化了。科技树儿了解到,在某数码博主经过和相关人员的沟通核实之后,目前暂定的是搭载华为麒麟710芯片以上的机型,无论华为或荣…

Tcl与Design Compiler (十二)——综合后处理

本文如果有错,欢迎留言更正;此外,转载请标明出处 http://www.cnblogs.com/IClearner/ ,作者:IC_learner 概述 前面也讲了一些综合后的需要进行的一些工作,这里就集中讲一下DC完成综合了,产生了…

四则运算网页版

一.设计思想: 1)写出一个菜单界面,有两个选项一个是分数,一个是整数。 2)而这两个标签后面则是转向其更详细的菜单,题目数量,有无括号,运算的项数等等详细功能,再点击这两…

分布式交换机配置备份和还原

1.备份和还原vSphere Distributed Switch配置 1.1导出 vSphere Distributed Switch 配置 可以将 vSphere Distributed Switch 和分布式端口组配置导出到某一文件。该文件保留有效的网络配置,使这些配置能够传输至其他环境。 步骤: 1) 在 vSphere Web Cli…

华为鸿蒙系统好在哪,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪

在华为开发者大会上,华为消费业务CEO 余承东,正式发布鸿蒙OS2.0,并宣布华为鸿蒙OS将全面启用全场景生态,并将于2020年12月发布手机版。余承东还表示,明年,华为的智能手机将全面升级,以支持鸿蒙操…

html5画分形图形,2.5 绘制透明图形 - HTML5 Canvas 实战

对于需要图形分层的应用,经常需要处理透明度。本节,我们将学习如何使用全局透明度设置图形的透明度。图2-5 绘制透明图形绘制步骤按照以下步骤,在一个不透明的矩形之上,绘制一个透明的圆:1. 定义2D画布上下文&#xff…

html5录音功能代码,recorder.js 基于 HTML5 实现录音功能

recorder.js 基于 HTML5 实现录音功能2020-06-23 01:49:56recorder.jsmicrophone基于HTML5的录音功能,输出格式为mp3文件。前言完全依赖H5原生API所涉及的API:WebRTC、AudioContext、Worker、Video/Audio API、Blob、URL兼容性Chrome、FF、Edge、QQ、360…

html5页面引入jquery,如何在javascript中引入jQuery?

jquery是一个用来代替JavaScript来快捷书写前端脚本语言的库,jquery可以大大的简化复杂的js代码,使开发人员专注于实现页面的效果。jquery的导入方式有两种,一种是本地导入,一种是从超链接导入。方式一:本地导入我们可…

湖南省普通招生2021高考成绩查询,湖南省2021八省联考成绩可查,附查询入口及往年分数线...

原标题:湖南省2021八省联考成绩可查,附查询入口及往年分数线湖南省2021年八省联考新高考适应性考试成绩公布,这次大家考的如何呢?此次成绩排名对于考生择校及志愿填报有一定的参考意义,小盒一时间收集整理相关消息&…