uwsgi

遵循wsgi协议的web服务器

uwsgi的安装

pip install uwsgi

uwsgi的配置

项目部署时,需要把settings.py文件夹下的:

DEBUG = FALSE
ALLOWED_HOSTS = ['*']

新建一个文件 uwsgi.ini 在项目目录下与manage.py 同级

[uwsgi]
#使用nginx连接时使用
#socket=127.0.0.1:8080
#直接做web服务器使用
http=127.0.0.1:8080
#项目目录
chdir=/Users/smart/Desktop/dj/bj17/dailyfresh
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=dailyfresh/wsgi.py
# 指定启动搞得工作进程数
processes=4
# 指定工作进程中线程数
threads=2
master=True
# 保存启动之后主进程的pid
pidfile=uwsgi.pid
# 设置uwsgi后台运行,uwsgi.log保存日志信息
daemonize=uwsgi.log
# 设置虚拟环境的路径
virtualenv=/Users/smart/.virtualenvs/dailyfresh

uwsgi 的启动和停止

启动:uwsgi   --ini   配置文件路径  例如:uwsgi --ini   uwsgi.ini

停止:uwsgi  --stop  uwsgi.pid 路径  例如:uwsgi   --stop   uwsgi.pid

nginx命令

重新加载命令

nginx  - s  reload

nginx 配置转发请求给uwsgi

location / {
# 包含uwsgi的请求参数
include uwsgi_params;
# 转交请求给uwsgi
uwsgi_pass uwsgi服务器的ip:port;
}

nginx配置处理静态文件

django settings.py中配置收集静态文件路径:

STATIC_ROOT=收集的静态文件路径 例如:/var/www/dailyfresh/static;

django 收集静态文件的命令:

python manage.py collectstatic

执行上面的命令会把项目中所使用的静态文件收集到STATIC_ROOT指定的目录下。

收集完静态文件之后,让nginx提供静态文件,需要在nginx配置文件中增加如下配置:

如果/var/www/dailyfresh/static/ 没有权限 就赋予权限 chmod 777

location /static {

    # 在/var/www/ 下新建目录dailyfresh/static/

    # 指定静态文件存放的目录

    alias /var/www/dailyfresh/static/;

}

nginx转发请求给另外地址

在location 对应的配置项中增加 proxy_pass 转发的服务器地址。

如当用户访问127.0.0.1时,在nginx中配置把这个请求转发给172.16.179.131:80(nginx)服务器,让这台服务器提供静态首页。

配置如下:

# 等号= 表示严格精确匹配

# 传递请求给静态页面服务器的nginx

location = /{

    proxy_pass http://172.16.179.131;

}

nginx配置upstream实现负载均衡

ngnix 配置负载均衡时,在server配置选项卡的前面增加upstream配置项。

不在server配置选项中。

dailyfresh 名字可以随意

upstream dailyfresh {

    server 127.0.0.1:;

    server 127.0.0.1:;

}

然后在server选项中修改为location /为下面

location / {

   include uwsgi_params;

   # uwsgi_pass 127.0.0.1:;

   uwsgi_pass dailyfresh;

}

最新文章

  1. addview的使用
  2. 哈希 poj 1480
  3. DevExpress GridControl使用方法总结
  4. nginx 代理配置文件实例
  5. NDK(2)使用eclipse + ndk开发过程演示,含CPU架构编译
  6. asp.net中的Application概述
  7. jqGrid中多选
  8. Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍
  9. 从客户端(txtNewsContent="<hr />")中检测到有潜在危险的 Request.Form 值。怎么办呀?
  10. 访问Google神器,魔高一尺,道高一丈!
  11. response.setContentType与 request.setCharacterEncoding 区别
  12. final关键字修饰的变量
  13. linux 更换yum源
  14. 技术文档分享_linux中生成考核用的GPT分区表结构修复
  15. 从壹开始 [ Id4 ] 之一║ 授权服务器 IdentityServer4 开篇讲&计划书
  16. Linux Django项目部署
  17. 序列化---Serializable与Externalizable源码
  18. mssql sqlserver 视图如何加密,让第三方用户查看不到其中的SQL语句
  19. linux --mariadb/redis数据库篇
  20. ECS API

热门文章

  1. Codeforces Round #483 (Div. 2)
  2. Markdown编辑器editor.md的使用---markdown上传图片
  3. Javascript继承,再谈
  4. python改变输出字体颜色==>colorama
  5. pytesser3 使用说明
  6. IE下获取XPATH小工具,支持32/64位
  7. java集合框架之ArrayList
  8. BZOJ_1040_[ZJOI2008]骑士_树形DP
  9. React Native 之极光推送jpush-react-native 手把手配置
  10. Postman-----Response body:JSON value check的使用介绍