nginx把请求转发给uwsgi,然后把uwsgi处理得到的结果返回给浏览器。

安装nginx:

yum -y install gcc pcre-devel openssl-devel #安装Nginx需要依赖这三个包
useradd -s /sbin/nologin nginx #创建一个不能登录的用户用来启动Nginx

源码安装:
tar -xvf nginx~~~~~.tar.gz #解包
cd ./nginx~~~~~/ #进入安装目录
./configure --prefix=/usr/loacal/nginx --user=nginx --group=nginx --with-http_ssl_module
#--prefix是安装的路径,默认是/usr/local/nginx
#--user指定启动的用户
#--group指定组
#--with-http_ssl_module开启ssh加密

防火墙:

systemctl stop firewalld
setenforce 0

ln -s /usr/local/nginx/sbin/nginx /sbin/ #创建快捷方式,这样直接使用nginx命令就可以了
nginx #启动服务 如果没有快捷方式则输入/usr/local/nginx/sbin/nginx启动服务
nginx -s stop #关闭服务
nginx -s reload #重新加载配置文件

安装uwsgi:

pip install uwsgi

新建test.py文件用于测试uwsgi
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return "Hello World"

uwsgi --http :9999 --wsgi-file test.py
curl http://127.0.0.1:9999 #进行验证

nginx连接uwsgi:

1、配置ini文件,使用uwsgi访问动态页面
mkdir /sur/local/uwsgi #任意创建文件夹
vim django_pro.ini #创建ini文件,用来启动项目
[uwsgi]
socket = 127.0.0.1:8899 #定义ip和端口,通过ip和端口访问uwsgi
master = true #主进程
vhost = true #多站模式
no-site = true #多站模式时不设置入口模块和文件
workers = 2 #子进程数
reload-mercy = 10
vacuum = true #退出、重启时清理文件
max-requests = 1000 #最大请求数
limit-as = 512
buffer-size = 30000
pidfile = /sur/local/uwsgi/uwsgpid.pid #pid文件,用于下面的脚本启动、停止该进程
daemonize = /website/uwsgilog.log #日志信息

2、修改nginx配置文件用于做请求转发:
vim /usr/local/nginx/conf/nginx.conf
location / {
include uwsgi_params; #nginx中提供和uwsgi的接口,在conf/目录下
uwsgi_pass 127.0.0.1:8899; # 请求转发给uwgsi
uwsgi_param UWSGI_CHDIR /xxxx/yyyy/project; #项目根目录
uwsgi_param UWSGI_SCRIPT project.wsgi; #项目入口,相对于项目根目录的路径
# index index.html index.htm; #可以不需要
client_max_body_size 35m;
}

uwsgi --ini django_pro.ini #后台运行uwsgi
nginx -s reload #重启nginx服务

nginx 默认是80端口
通过 127.0.0.1:80访问
127.0.0.1:8899访问的是uwsgi,不是web服务。

Nginx+uwsgi+django部署项目的更多相关文章

  1. 使用docker-compose+nginx+uwsgi+django部署项目

    (1)centos上下载docker + docker-compose (2)基础目录 (3)首先创建一个纯净的python+django+uwsgi的镜像,便于后期使用(也可不用创建,后期docke ...

  2. Nginx+uWSGI+Django部署web服务器

    目录 Nginx+uWSGI+Django部署web服务器 环境说明 前言 搭建项目 Django部署 编辑luffy/luffy/settings.py 编辑luffy/app01/views.py ...

  3. nginx+uwsgi+djangos部署项目完整

    1.基本信息 Linux 版本:SentOS7.4 Python 版本:3.7.1 2.下载 uWSGI pip3 install uwsgi uwsgi 主要的任务是座位分发路由的服务器. 先写一个 ...

  4. nginx+uwsgi+django部署流程

    当我们在用django开发的web项目时,开发测试过程中用到的是django自带的测试服务器,由于其安全及稳定等性能方面的局限性,django官方并不建议将测试服务器用在实际生产. nginx+uws ...

  5. nginx+uwsgi+django 部署原理

    python开发群里经常有同学问 nginx+uwsgi+django 着了教程部署,但是不知道他们之间怎么样的关系,于是我就google到了一个让我看起来很认同的图,大家看了也比较认同,于是就分享出 ...

  6. ubuntu16.4+nginx+uwsgi+Django 部署上线

    Nginx概述 Nginx是一款轻量级的HTTP服务器,采用事件驱动和异步非阻塞处理方式框架,这让其具有极好的IO性能,市场用于服务端的反向代理和负载均衡 Nginx优点 高并发连接:官方测试Ngin ...

  7. 10、nginx+uwsgi+django部署(动静分离)

    10.1.说明: 1.介绍: 创建Django项目,可以通过 pyhon3 manage.py runserver 0.0.0.0:8080 & 命令更方便地调试程序,但是如果当一个项目完成了 ...

  8. 在ubuntu16上进行nginx+uwsgi+django部署的简要步骤

    网上有很多部署教程,说了一大堆,遇到坑还是要自己一个个解决,这里有几个比较重要的坑大家一定要注意. 1.首先要安装python和python-dev环境,如果没有安装python-dev后面安装有些依 ...

  9. Ubuntu-18.04.2系统 Nginx+uWSGI+Django 部署生产环境

    首先准备环境: 1.使用虚拟机 VMware Workstation Pro (也可以不用),安装Ubuntu-18.04.2系统 开始搭建环境 (因为ubuntu18.4.2集成了python3.6 ...

随机推荐

  1. Spring @Async之一:实现异步调用示例

    什么是“异步调用”? “异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行:异步调用指程序在顺序执行时,不等待异步调用的语句返回结果 ...

  2. springboot 时间戳和 数据库时间相差14个小时

    在 springboot 开发过程中遇到一个奇怪的问题,就是已经设置系统时间GMT+8, 但是时间到数据库后会减少14个小时.后来发现是 jvm 时区和数据库时区设置不一致的问题. jvm 设置的是 ...

  3. list.OfType()

    将两个类型不同是实体存入到一个object可以通过OfType方法分别取出来 //将两个类型不同是实体存入到一个object可以通过OfType方法分别取出来 List<Phone> Ph ...

  4. Python学习笔记之正则表达式

    本篇在写的时候大量参考了https://deerchao.cn/tutorials/regex/regex.htm的内容 一.什么是正则表达式 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂 ...

  5. linux下的文件操作

    彻底删除文件 rm -rf + [文件目录 可相对可绝对] 是彻底删除而且linux无回收站 创建文件 touch + [文件名] 创建文件夹 mkdir + [文件夹名] 文件提权:chmod 77 ...

  6. day14-Python运维开发基础(内置函数、pickle序列化模块、math数学模块)

    1. 内置函数 # ### 内置函数 # abs 绝对值函数 res = abs(-10) print(res) # round 四舍五入 (n.5 n为偶数则舍去 n.5 n为奇数,则进一!) 奇进 ...

  7. 转:Nginx的超时keeplive_timeout配置详解

    https://blog.csdn.net/weixin_42350212/article/details/81123932 Nginx 处理的每个请求均有相应的超时设置.如果做好这些超时时间的限定, ...

  8. Maven:sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

    还是记录使用 maven 时遇到的问题. 一.maven报错 maven package 进行打包时出现了以下报错: Non-resolvable parent POM for com.wpbxin: ...

  9. Day 1:思考

    干游戏这行从实习到工作算起来也有快7年的时间了, 7年的时间~上学了.毕业了.工作了.结婚了.孩子要出生了~ 也算是经历了不少的事情了,自己觉得生活过的是越来越好了, 自己做过的游戏也不算少了,不过真 ...

  10. Golang函数-递归函数

    Golang函数-递归函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.