flask应用的配置(使用uWSGI和Nginx在CentOS 7上搭建)

基础的Nginx 数据库等配置省略

创建python虚拟环境

sudo pip install virtualenv
mkdir ~/myproject
cd ~/myproject
virtualenv myprojectenv
source myprojectenv/bin/activate

安装 Flask 和 uWSGI

pip install uwsgi flask

创建一个小应用

vi ~/myproject/myproject.py
from flask import Flask
application = Flask(__name__) @application.route("/")
def hello():
return "<h1 style='color:blue'>Hello There!</h1>" if __name__ == "__main__":
application.run(host='0.0.0.0')

运行

python myproject.py

浏览器打开服务器5000端口,看到蓝色的Hello There!就表示成功了。

创建 WSGI 入口

vi ~/myproject/wsgi.py
from myproject import application

if __name__ == "__main__":
application.run()

运行

uwsgi --socket 0.0.0.0:8000 --protocol=http -w wsgi

浏览器打开服务器8000端口,看到蓝色的Hello There!就表示成功了。

创建uWSGI Configuration文件

vi ~/myproject/myproject.ini
[uwsgi]
module = wsgi master = true
processes = 5 socket = myproject.sock
chmod-socket = 660
vacuum = true die-on-term = true

创建Systemd Unit文件

sudo vi /etc/systemd/system/myproject.service
[Unit]
Description=uWSGI instance to serve myproject
After=network.target [Service]
User=user
Group=nginx
WorkingDirectory=/home/user/myproject
Environment="PATH=/home/user/myproject/myprojectenv/bin"
ExecStart=/home/user/myproject/myprojectenv/bin/uwsgi --ini myproject.ini [Install]
WantedBy=multi-user.target

这样就能用systemd命令控制我们的小应用了

sudo systemctl start myproject
sudo systemctl enable myproject

配置nginx

sudo nano /etc/nginx/nginx.conf

server {}上方添加一个server {}脚本

http {
. . . include /etc/nginx/conf.d/*.conf; server {
} server {
listen 80 default_server; . . .
server {
listen 80;
server_name server_domain_or_IP; location / {
include uwsgi_params;
uwsgi_pass unix:/home/user/myproject/myproject.sock;
}
}

将nginx user加入你的user group

sudo usermod -a -G user nginx

配置group的权限

chmod 710 /home/user

看看nginx配置文件有没有语法错误

sudo nginx -t

之后启动

sudo systemctl start nginx
sudo systemctl enable nginx

这样就能在80端口访问我们的小应用了!

Flask配置方法的更多相关文章

  1. Python的Flask框架使用Redis做数据缓存的配置方法

    flask配置redis 首先得下载flask的缓存插件Flask-Cache,使用pip下载. sudo pip install flask_cache 为应用扩展flask_cache   app ...

  2. Inside Flask - 配置的实现

    Inside Flask - 配置的实现 flask 的配置对象 app.config 本身使用很简单,无非就是以字典的形式使用,而它的实现,本身就是以字典的形式的. 在 flask/config.p ...

  3. Flask实战-留言板-使用Flask-DebugToolbar调试程序、Flask配置的两种组织形式

    使用Flask-DebugToolbar调试程序 扩展Flask-DebugToolbar提供了一系列调试功能,可以用来查看请求的SQL语句.配置选项.资源加载情况等信息.这些信息在开发时会非常有用. ...

  4. Flask配置方式

    目录 Flask配置方式 默认的配置参数 Flask配置方式 flask配置总共有四种方式: 第一种:直接在启动文件中进行配置 from flask import Flask app = Flask( ...

  5. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  6. CentOS防火墙iptables的配置方法详解

    CentOS系统也是基于linux中的它的防火墙其实就是iptables了,下面我来介绍在CentOS防火墙iptables的配置教程,希望此教程对各位朋友会有所帮助. iptables是与Linux ...

  7. Wampserver 2.5 多站点配置方法

    写在开头:本文适用于wampserver2.5版本,和wamp的老版本配置有语法上的区别,笔者正是因为被老版本的配置办法给整迷糊了所以才总结了一篇针对2.5版本的配置方法,如果您还停留在1.x或着已经 ...

  8. docker网络配置方法总结

    docker启动时,会在宿主主机上创建一个名为docker0的虚拟网络接口,默认选择172.17.42.1/16,一个16位的子网掩码给容器提供了65534个IP地址.docker0只是一个在绑定到这 ...

  9. XAMPP中proftpd的简明配置方法

    XAMPP中proftpd的简明配置方法   用LAMPP的安装方法可以开一个默认的nobody用户,用lampp security就可以初始设置相应的默认用户密码.如果要有多用户,又怎样管理.目录怎 ...

随机推荐

  1. 121-基于TI DSP TMS320DM8148的全高清1080P 60fs的视频编解码系统 机器人主板

    基于TI DSP TMS320DM8148的全高清1080P 60fs的视频编解码系统 一.板卡概述 本系统基于最先进的DSP技术,构建一个全高清的视频编解码系统,采用TI的芯片.借助TI的DaVin ...

  2. django post get

    GET请求和POST请求 GET请求: 1. 浏览器请求一个页面 2. 搜索引擎检索关键字的时候 POST请求: 1. 浏览器向服务端提交数据,比如登录/注册等 判断提交方式: if request. ...

  3. 一、WebApi模型验证实践项目使用

    一.启语 前面我们说到,模型验证的原理(包含1.项目创建,2.模型创建,3.走通测试模型验证,4.在过滤器中处理返回json格式(非控制器内))-完全是新手理解使用的,新番理解 通常情况下,对于那些经 ...

  4. Git --05 Gitlab使用

    目录 Gitlab使用 01. 外观配置 02. Gitlab汉化配置 03. 注册限制 04. 创建用户及组 05. 创建用户 06. 把用户添加到组 07. 创建项目 08. 推送代码到Gitla ...

  5. 【LeetCode】并查集 union-find(共16题)

    链接:https://leetcode.com/tag/union-find/ [128]Longest Consecutive Sequence  (2018年11月22日,开始解决hard题) 给 ...

  6. mongodb 稀疏索引

    稀疏索引(或者称间隙索引)就是只包含有索引字段的文档的条目,即使索引字段包含一个空值.也就是说间隙索引可以跳过那些索引键不存在的文档.因为他并非包含所有的文档,因此称为稀疏索引.与之相对的非稀疏索引或 ...

  7. FreeBSD虚拟机——小折腾

    最近,突然想起来Linux了,因为前段时间接触了DOS命令,提高了自己的工作效率,这会想再温习下Linux的CLI,无奈windows下unix命令,水土不服,因此想尝试虚拟机,虚拟机软件无非vmwa ...

  8. Oracle分组函数之ROLLUP

    功能介绍: 首先是进行无字段的聚合,然后在对字段进行从左到右依次组合后聚合 创建表: Create Table score ( classID Int, studentName ), subject ...

  9. Python3解leetcode Maximum SubarrayHouse Robber

    问题描述: You are a professional robber planning to rob houses along a street. Each house has a certain ...

  10. VMware安装MAC OS

    测试环境 安装环境:win10 .VMware Workstation Pro14 镜像:OS X 10.11.5(由于太大,就没有上传网盘,网上也有很多资源) 安装准备 安装前先把关于VMware的 ...