一、安装Nginx

在 /home/download下下载压缩包

wget https://nginx.org/download/nginx-1.12.2.tar.gz

解压缩

tar zxvf nginx-1.12.2.tar.gz

./configure
make
make install

添加环境变量:

vim ~/.bashrc

//添加
#NGINX
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin source ~/.bashrc//激活

一些nginx相关命令

nginx -s stop //重启nginx
nginx //启动
pkill -9 nginx //强制停止

修改nginx配置

//路径
vim /usr/local/nginx//conf/nginx.conf 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"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; server {
listen 80;
server_name xxx.xxx.xxx.xxx; #charset koi8-r; access_log /home/web/JulyNovel/logs/access.log;
error_log /home/web/JulyNovel/logs/error.log; location / {
include uwsgi_params;
uwsgi_pass localhost:5000;
uwsgi_param UWSGI_PYHOME /root/anaconda3/envs/WebServer;
uwsgi_param UWSGI_CHDIR /home/Web/JulyNovel;
uwsgi_param UWSGI_SCRIPT manage:app;
} #error_page 404 /404.html; # redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

二、uwsgi安装

先安装uwsgi

pip install uwsgi

在你的项目根目录下创建一个配置文件uwsgiconfig.ini(uwsgi支持多种配置文件格式,xml,ini,json等)

[uwsgi]

socket = 127.0.0.1:8001     //启动程序时所使用的地址和端口,通常在本地运行flask项目,
//地址和端口是127.0.0.1:5000,
//不过在服务器上是通过uwsgi设置端口,通过uwsgi来启动项目,
//也就是说启动了uwsgi,也就启动了项目。
chdir = /home/www/ //项目目录 wsgi-file = manage.py //flask程序的启动文件,通常在本地是通过运行
// python manage.py runserver 来启动项目的 callable = app //程序内启用的application变量名 processes = 4 //处理器个数 threads = 2 //线程个数 stats = 127.0.0.1:9191 //获取uwsgi统计信息的服务地址

启动、停止uwsgi

前提:yum install psmisc

新建manage_uwsgi.sh

sh manage_uwsgi.sh stop

#!/bin/bash
if [ ! -n "$1" ]
then
echo "Usages: sh uwsgiserver.sh [start|stop|restart]"
exit 0
fi if [ $1 = start ]
then
psid=`ps aux | grep "uwsgi" | grep -v "grep" | wc -l`
if [ $psid -gt 4 ]
then
echo "uwsgi is running!"
exit 0
else
uwsgi /etc/uwsgi.ini
echo "Start uwsgi service [OK]"
fi elif [ $1 = stop ];then
killall -9 uwsgi
echo "Stop uwsgi service [OK]"
elif [ $1 = restart ];then
killall -9 uwsgi
/usr/bin/uwsgi --ini /etc/uwsgi.ini
echo "Restart uwsgi service [OK]" else
echo "Usages: sh uwsgiserver.sh [start|stop|restart]"
fi

保存配置文件,我们可以通过键入 uwsgi uwsgiconfig.ini 来启动uwsgi。

三、anaconda3配置

在 /home/download下下载压缩包

wget https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh

·bash Anaconda3-5.0.1-Linux-x86_64.sh·

常用命令

conda env list //
conda create --name //
source activate <evn-name>

Anaconda详细教程

四、前往我的Github下载源码

JulyNovel-Github

五、启动程序,玩起来吧

localhost:5000

主从共四台服务器配置好Python uWSGI Nginx环境后,额外为主服务器配置MariaDB和Redis环境:

别忘了差异化配置config.py

好了,可以开始愉快地Spider了

xxx.xxx.xxx.xx/missionStart

顺便,任何一台服务器都可以访问Graphql接口测试文档:

xxx.xxx.xxx.xx/graphql

nginx uwsgi flask相关配置的更多相关文章

  1. nginx+uwsgi+flask+supervisor 项目部署

    环境 - Linux: Ubuntu 16.04 - uWSGI 2.0.18 - Flask 1.0.2 - supervisor 3.2.0 - nginx/1.8.1 首先区分几个概念 WSGI ...

  2. Ubuntu下nginx+uwsgi+flask的执行环境搭建

    选择web framwork是个非常艰难的事情, 主要分为轻量级和重量级框架. 因为没有搭建站点这样的须要, 所以回避SSH, Django这样的框架, 而选择一个轻量级框架. 自己也比較青睐pyth ...

  3. nginx+uwsgi+flask 服务器配置

    注:每个机器,软件版本可能不一样,虽然网上有很多类似的帖子,但是我在搭建的时候遇到了不少的坑,此文仅供参考. 请求流程: 1.安装uwsgi uwsgi是一个应用服务器,非静态文件的网络请求就必须通过 ...

  4. Ubuntu下使用Nginx+uWSGI+Flask(初体验)

    Ubuntu 18.04,Nginx 1.14.0, uWSGI 2.0.17.1,Flask, 前言 Windows不支持uWSGI!为了上线自己的项目,只能选择Linux. 自己前面开发了一个Fl ...

  5. Docker构建nginx+uwsgi+flask镜像(二)

    Dockerfile搭建环境并打包应用 在上一章Docker构建nginx+uwsgi+flask镜像(一)的学习中,我们学会用命令行一句一句在alpine环境中搭建nginx+uwsgi+flask ...

  6. Docker构建nginx+uwsgi+flask镜像(一)

    前言 笔者之前是从事Java方面的工作,自从18年5月左右来到新的公司,接触到Python,被其简单优雅的语法风格深深吸引,同时,新公司也帮助笔者打开Docker世界的大门,让笔者体会到“一次打包,到 ...

  7. 一次请求中,经过 nginx+uWSGI+flask应用程序搭建服务的执行过程

    Flask框架有自带的http server,但是缺点非常明显,并发能力,及时响应非常差,只适合开发时自测使用. 在我接触过的项目中,生产环境使用nginx+uWSGI+flask应用程序进行部署服务 ...

  8. Linux centos VMware Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

    一.Nginx防盗链 配置如下,可以和上面的配置结合起来 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|x ...

  9. nginx+uwsgi+flask搭建python-web应用程序

    Flask本身就可以直接启动HTTP服务器,但是受限于管理.部署.性能等问题,在生产环境中,我们一般不会使用Flask自身所带的HTTP服务器. 从现在已有的实践来看,对于Flask,比较好的部署方式 ...

随机推荐

  1. iOS开发基础控件--UIButton

    01 //这里创建一个圆角矩形的按钮 02     UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 03 ...

  2. Python与Go插入排序

    #!/usr/bin/env python # -*- coding: utf-8 -*- # 插入排序 # 时间复杂度 O(n^2) import time def logger(func): st ...

  3. web前端整套面试题(二)--今日头条面试题

    12道单选,7道不定项选择,2道编程题 一.单选(12题) 1.[单选题]在HTML中,( )可以在网页上通过链接直接打开邮件客户端发送邮件. A.<a href=”telnet:ming.zh ...

  4. JAVA中Colllection的基本功能

    Collection中的add方法: 代码: public static void main(String[] args) {        // TODO Auto-generated method ...

  5. node-mysql中防止SQL注入

    备注: 本文针对mysqljs/mysql. 为了防止SQL注入,可以将SQL中传入参数进行编码,而不是直接进行字符串拼接.在node-mysql中,防止SQL注入的常用方法有以下四种: 方法一:使用 ...

  6. 用Box2d物理引擎设计类似愤怒小鸟投篮游戏 物理引擎的引入和基本框架搭建

  7. cdoj31-饭卡(card) (01背包)

    http://acm.uestc.edu.cn/#/problem/show/31 饭卡(card) Time Limit: 3000/1000MS (Java/Others)     Memory ...

  8. jsp实现查询与展示功能

    今天做了一天的这个功能,开始是数据库一直打不开,显示Class not  found,一直调试,调试了一下午.原来是mysql的jar包,必须要放到WEB-INF这个目录下的lib文件夹中,然后bui ...

  9. O(n)求中位数和第k大数

    解题关键:模板与思路.面试题 #include<cstdio> #include<cstring> #include<algorithm> #include< ...

  10. 使用Jenkins集成和自动化打包资料

    1.手把手教你利用Jenkins持续集成iOS项目 http://www.jianshu.com/p/41ecb06ae95f 2.Jenkins+ Xcode+ 蒲公英 实现IOS自动化打包和分发 ...