nginx+uwsgi介绍
一、nginx+uwsgi介绍
pip list # 查看安装过的模块
rpm -q nginx # 查看是否安装某款服务 pip install django == 1.11.11 # 安装django并指定版本
yum install -y nginx # 安装nginx """单独在一台被控机上测试"""
mkdir /data
cd /data/ # 命令行创建django项目
django-admin startproject mysite
cd mysite/
python manage.py startapp app01 # 修改配置文件
ALLOWED_HOSTS = ["*"]
DEBUG = False
注册app01 # 启动访问
python manage.py runserver 0.0.0.0:8080 # 需要关闭防火墙 iptables -F # django默认使用的wsgiref并发量太小 换成uwsgi
pip install uwsgi # 可保持django运行 重新开设xshell窗口安装即可
# 报错 需要下载python-devel(开发必备的包) 秉持原则:缺什么装什么不用的别装 然后重新安装即可
yum install -y python-devel # 启动uwsgi 需要切换到项目目录下
uwsgi --http :8090 --module mysite.wsgi
# 将uwsgi服务写入配置文件中
vi /etc/uwsgi.ini
"""
[uwsgi]
http = 0.0.0.0:8000
# the local unix socket file than commnuincate to Nginx
# socket = /data/mysite/mysit.socket
# the base directory (full path)
chdir = /data/mysite
# Django's wsgi file
wsgi-file = mysite/wsgi.py
# maximum number of worker processes
processes = 4
#thread numbers startched in each worker process
threads = 2
# clear environment on exit
vacuum = true # uwsgi关闭之后 将临时生成的文件删除掉
daemonize = /data/mysite/uwsgi.log # 后台启动 守护进程
py-autoreload=1 # py文件改动 自动重新加载
""" # 配置文件启动
uwsgi --ini /etc/uwsgi.ini
# nginx做代理 修改配置文件(可以直接修改nginx自带的 也可自定义配置)
vi /etc/nginx/nginx.conf
"""
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
}
"""
# 重启服务
systemctl restart nginx
# 访问10.0.0.101:80端口报错 针对nginx访问报错 有三种配置方式 # 第一种
# uwsgi的配置 vi /etc/uwsgi.ini
http = 0.0.0.0:8000
# nginx的配置 vi /etc/nginx/nginx.conf
location / {
proxy_pass http://127.0.0.1:8000;
}
# 重启服务
systemctl restart nginx
# 仍然无法访问 查看系统日志 访问成功日志(access.log)和报错日志(error.log)
tail -f /var/log/nginx/error.log # 报权限错误
setenforce 0 # selinux安全控件(非常牛逼的认证方式 但实际工作不用)
vi /etc/selinux/config
"""
修改配置
SELINUX=disabled
"""
pkill -9 uwsgi # 杀掉uwsgi的进程 # 第二种
# uwsgi的配置 vi /etc/uwsgi.ini
socket = 0.0.0.0:8000
# nginx的配置 vi /etc/nginx/nginx.conf
include /etc/nginx/uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
# 重启服务
systemctl restart nginx # 第三种
# uwsgi的配置 vi /etc/uwsgi.ini
socket = /data/mysite/mysite.socket
# nginx的配置 vi /etc/nginx/nginx.conf
include /etc/nginx/uwsgi_params;
uwsgi_pass unix:/data/mysite/mysite.socket;
# 重启服务
systemctl restart nginx
nginx+uwsgi介绍的更多相关文章
- 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...
- Nginx-->基础-->理论-->001:Nginx基本介绍
一.nginx基本介绍 传统上基于进程或者线程模型架构的web服务通过每进程或者每线程处理并发连接请求,这势必毁在网络和I/O操作时产生阻塞,其另外一个必然结果则是对内存和CPU的利用率低下,产生一个 ...
- Nginx+uWSGI+Django+Python+ MySQL 搭建可靠的Python Web服务器
一.安装所需工具 yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf libtool ...
- 安装Nginx+uWSGI+Django环境
Ubuntu Server 12.04 安装Nginx+uWSGI+Django环境 今天要介绍的是利用APT源直接apt-get install安装配置我们所需要的环境,首先按惯例先安装MySQL和 ...
- debian完整部署 Nginx + uWSGI + Django
手工部署一个Django服务器真心不容易,需要安装很多东西.从头开始搭建服务器,主要是为了梳理一下后续开发中一般为碰到的平台部署.对后续问题的解决有一定帮助. 通常部署有2中方式: 一种是使用现成提供 ...
- Nginx+uWSGI+Django原理
Python的Web开发中,如果使用Django框架,那么较为成熟稳定的服务器架构一般是Nginx+uWSGI+Django.而为什么一定要三个结合在一起呢?直接使用Django的runserver来 ...
- Centos+nginx+uwsgi+Python多站点环境搭建
前言 新公司的第一个项目,服务器端打算用python作为restful api.所以需要在Centos上搭建nginx+fastcgi+python的开发环境,但后面网上很多言论都说uwsgi比fas ...
- Django+Nginx+uWSGI部署
一.介绍 Django的部署可以有多种方式,采用nginx+uwsgi的方式是最常见的一种方式.在这种方式中,将nginx作为服务器前端,接收WEB的所有请求,统一管理请求.nginx把所有静态请求自 ...
- nginx+uWSGI+django+virtualenv+supervisor发布web服务器
nginx+uWSGI+django+virtualenv+supervisor发布web服务器 导论 WSGI是Web服务器网关接口.它是一个规范,描述了Web服务器如何与Web应用程序通信,以 ...
- Nginx+uwsgi+Django 的web应用环境部署-完整记录
Python作为当前最火爆最热门,也是最主要的Web开发语言之一,在其二十多年的历史中出现了数十种Web框架,比如Django.Tornado.Flask.Twisted.Bottle和Web.py等 ...
随机推荐
- 记录--iview 使用爬坑
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前段时间公司需要开发一个后台管理系统,时间比较急迫,一两天时间.想一想自己一点一点的搭建起来可能性不太大,就想着有没有现成的可以改一改,就 ...
- Dockerfile 时区设置(MacOs有效)
# 设置时区RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' >/etc/t ...
- flink scala 从Oracle同步数据到MySql
pom <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> ...
- SHELL使用教程
疑难解答 执行完shell文件后不退出 在shell文件末尾添加如下命令即可. exec /bin/bash 参考资料 为什么sh脚本运行之后自动退出,有没有让终端不自动关闭的方法. - Ubuntu ...
- 基于 alientek rv1126 快速启动调试那的写坑
基于 alientek rv1126 快速启动调试那的写坑 1. sdk 编制准备工作 1.1 编译配置修改 首先拿到 sdk 通过修改一下相关配置 1.1.1修改DDR 配置 cd /home/al ...
- CSS样式中的各种居中方式
1.水平居中 将margin-left和margin-right属性设置为auto,从而达到水平居中的效果. 代码: margin:0 auto; 2.文字水平垂直居中 利用line-height设为 ...
- C++设计模式 - 代理模式(Proxy)
接口隔离模式 在组件构建过程中,某些接口之间直接的依赖常常会带来很多问题.甚至根本无法实现.采用添加一层间接(稳定)接口,来隔离本来互相紧密关联的接口是一种常见的解决方案. 典型模式 Facade P ...
- #KMP,容斥,dp#洛谷 5770 [JSOI2016] 无界单词
题目传送门 分析 显然如果存在长度大于一半的border那么必然存在小于一半的 border,所以容斥一下, 设 \(dp[i]\) 表示长度为 \(i\) 的不存在公共前后缀的字符串个数,那么 \( ...
- #Multi-SG#HDU 3032 Nim or not Nim?
题目 有\(n\)堆石子,每次可以从一堆中取出若干个或是将一堆分成两堆非空的石子, 取完最后一颗石子获胜,问先手是否必胜 分析 它的后继还包含了分成两堆非空石子的SG函数,找规律可以发现 \[SG[x ...
- Lustre架构介绍的阅读笔记-基础知识
本文是在阅读Introduction to Lustre* Architecture的如下章节时的笔记. Lustre – Fast, Scalable Storage for HPC Lustre ...