09 部署nginx web服务器(转发uwsgi请求)
1 配置nginx转发
$ whereis nginx $ cd /usr/local/nginx/conf $ vi nginx.conf
注释掉原来的html请求,增加uwsgi请求。
location / {
# 包含uwsgi的请求参数
include uwsgi_params;
# 转交请求给uwsgi
uwsgi_pass 172.17.0.11:8000;
}

2 修改uwsgi.ini配置
打开Django工程目录下的Configurations目录中的uwsgi.ini
如果直接访问uwsgi服务,则在uwsgi.ini中禁用http协议,改为socket协议。
uwsgi.ini文件内容如下:
# 配置文件:这一行必须有,如果[uwsgi]直接顶行,ubuntu18.04找不到 [uwsgi] #端口 # 服务器地址,不是外网地址,是服务器的ip地址 socket = 172.17.0.11:8000 # http = 172.17.0.11:8000 # Django工程目录 chdir = /publish/TongHeng # wsgi的位置 module = TongHeng.wsgi # 设置一个主进程 master = true # 开放四个进程 processes = 4 # 每进程开放2个线程 threads = 2 vacuum = true # 保存uwsgi.pid pidfile = uwsgi.pid log-maxsize = 500000000 logto = /tmp/uwsgi.log buffer-size = 32768 enable-threads = true reload-mercy = 8 harakiri = 60
3 重启nginx
$ /usr/local/nginx/sbin/nginx -s reload $ ps -aux | grep nginx

4 启动uwsgi
$ cd /publish/TongHeng $ uwsgi --ini config/uwsgi.ini # 停止uwsgi服务 $ uwsgi --stop uwsgi.pid #重启uwsgi服务 $ uwsgi --reload uwsgi.pid

在浏览器中访问,此时,再访问8000端口已访问不到了,因为被nginx占用了。而nginx的端口号是80端口。是浏览器默认的端口。所以,直接访问IP+Url即可。
到此,把nginx和uwsgi的转交完成了,浏览器可以远程访问服务器,但还是不能搜集到静态文件。
5 静态文件配置
5.1 在ubuntu服务器上创建一个目录,用于存储静态文件
$ mkdir /publish/static/
5.2 修改工程配置文件settings.py,设置静态文件路径
STATIC_ROOT='/publish/static'

5.3 搜集静态文件
在服务器工程根目录下执行命令:
$ python manage.py collectstatic
5.4 修改nginx静态文件配置
$ cd /usr/local/nginx/conf $ vi nginx.conf
增加一个转发:
location /static {
# 指定静态文件存放目录
alias /publish/static/;
}

至此,nginx配置文件就全部配置结束了。
nignx.conf配置文件的全部内容(包括fastDFS配置,uwsgi配置)如下:
server {
listen 80;
server_name 49.235.75.157;
location /group1/M00 {
root /opt/fdfs/storage;
ngx_fastdfs_module;
}
#charset koi8-r;
#access_log logs/host.access.log main;
#location / {
# root html;
# index index.html index.htm;
#}
location / {
# 包含uwsgi的请求参数
include uwsgi_params;
# 转交请求给uwsgi
uwsgi_pass 172.17.0.11:8000;
#uwsgi_param UWSGI_SCRIPT fastDFS.wsgi;
}
location /static {
# 指定静态文件存放目录
alias /publish/static/;
}
6 重启nginx和uwsgi.ini
$ /usr/local/nginx/sbin/nginx -s reload $ cd /publish/TongHeng $ uwsgi --ini config/uwsgi.ini

再从浏览器访问,可以接收到静态文件了。

09 部署nginx web服务器(转发uwsgi请求)的更多相关文章
- 08 部署nginx web服务器(转发fastDFS请求)
先准备两个文件: fastdfs-nginx-module-master.tar.gz:fastDFS nginx安装包 nginx-1.17.3.tar.gz:nginx安装包 注:这两个包文件要匹 ...
- nginx web服务器概念了解 配置
服务器 服务器 服务器是一种提供高效计算的机器,与普通的PC主机相比,具有可观的稳定性,高并发性,可扩展性. 互联网任何一个应用都是以服务器为基础设施的,没有服务器我们就无法访问网络上的任何内容,只能 ...
- nginx web服务器详解1(转)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://freeloda.blog.51cto.com/2033581/1285332 大 ...
- 20步打造最安全的NGINX WEB服务器
Nginx 是一个轻量级的,高性能的Web服务器以及反向代理和邮箱(IMAP/POP3)代理服务器.它运行在UNIX,GNU /linux,BSD 各种版本,Mac OS X,Solaris和Wind ...
- 构建高效安全的Nginx Web服务器
一 为什么选择Nginx搭建Web服务器 Apache和Nginx是目前使用最火的两种Web服务器,Apache出现比Nginx早.Apache HTTP Server(简称Apache)是世界使用排 ...
- asp.net 开发问题:Web 服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值。
"Web 服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值." 这个问题在开发需要上传文件的时候可能会遇到,今天遇到这个问题,百度过也有挺多的修改方法. 方法1: 修 ...
- asp.net 问题:Web 服务器上的请求筛选模块被配置为 拒绝包含的查询字符串过长的请求
发现问题: post请求,在发送一个图片base64编码的字符串时,服务端报这个错误. 报错信息中给出了解决办法: 最可能的原因: Web 服务器上的请求筛选被配置为拒绝该请求,因为查询字符串过长. ...
- Ext.ux.UploadDialog上传大文件 HTTP 错误 413.1 - Request Entity Too Large Web 服务器拒绝为请求提供服务,因为该请求实体过大。Web 服务器无法为请求提供服务,因为它正尝试与客户证书进行协商,但请求实体过大。
问题描述 问题:HTTP 错误 404.13 - Not Found 请求筛选模块被配置为拒绝超过请求内容长度的请求. 原因:Web 服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值(I ...
- 图解HTTP权威指南(三)| Web服务器对HTTP请求的处理和响应
作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络 ...
随机推荐
- opencv —— HoughCircles 霍夫圆变换原理及圆检测
霍夫圆变换原理 霍夫圆变换的基本原理与霍夫线变换(https://www.cnblogs.com/bjxqmy/p/12331656.html)大体类似. 对直线来说,一条直线能由极径极角(r,θ)表 ...
- 【python基础语法】第5天作业练习题
import random """ 1.一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣(打九折), 如果购买金额大于100元 ...
- 快速建立一个Django项目
快速建立一个Django项目 版本说明 一定要先明确好使用的Python版本和所使用包的版本,避免耽误不要的时间 Python==3.6.4 Django==1.11.9 djangoresframe ...
- 前端调用本地摄像头实现拍照(vue)
由于调用摄像头有使用权限,只能在本地运行,线上需用https域名才可以使用. <template> <div class="camera_outer"> & ...
- 使用 Jest 进行愉快的 JavaScript(TypeScript) 测试
一般我们不管是做前端还是后端,为了提高代码的质量,会选择一种测试驱动开发(TDD)的办法来写代码进行单元测试.Jest 是 Facebook 团队开发的一款测试框架,为的是提高开发者的"开发 ...
- SpringBoot图文教程6—SpringBoot中过滤器的使用
有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文系列教程技术大纲 鹿老师的Java笔记 SpringBo ...
- css权值和优先级+命名规范
选择器权值: 标签选择器:1 类选择器和伪类选择器:10 ID选择器:100 通配符选择器:0 行内样式:1000 !important 在一定条件下,优先级最高 常用的css样式命名 页面结构页头: ...
- 优酷爱奇艺视频转换为MP4格式工具
本君今天分享两个免费的视频格式转换工具,分别是爱奇艺和优酷的(腾讯的有点复杂,等整理完再分享).教程都是一步步亲手操作的,每一步都有配图.希望各位老板多转发分享,谢谢! 一爱奇艺QSV转MP4格式 解 ...
- .net生成PDF文件的几种方式
以下为在.net mvc中,生成pdf的几种方式,资料都是在做项目时网上找的 1.使用Microsoft.Office.Interop.Word.dll将word转换为PDF dll可以单独下载,一般 ...
- [大数据技术]datax的安装以及使用
1.datax简述 DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL.Oracle.SqlServer.Postgre.HDFS.Hive.ADS.HBase.Ta ...