django wsgi nginx 配置
2024-10-19 14:48:24
"""
WSGI config for HelloWorld project. It exposes the WSGI callable as a module-level variable named ``application``. For more information on this file, see
https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/
""" import os,sys os.environ['PYTHON_EGG_CACHE'] = '/data/wwwroot/HelloWorldroot/.python-eggs' reload(sys)
from django.core.wsgi import get_wsgi_application os.environ.setdefault("DJANGO_SETTINGS_MODULE", "HelloWorld.settings") application = get_wsgi_application() if __name__ == "__main__":
HelloWorld.run()
演示的是django HelloWorld项目启动,上面的是位于/data/wwwroot/HelloWorldroot/HelloWorld/wsgi.py
[uwsgi]
#socket = 127.0.0.1:9666 #设置监听的端口
socket = /tmp/HelloWorld_uwsgi.sock #设置使用sock
#修改文件后自动重启,触发时间3秒
py-autoreload=3
pidfile=/tmp/HelloWorld-master.pid
master=true
vhost=true
#项目目录
chdir=/data/wwwroot/HelloWorldroot/
module=HelloWorld.wsgi
#最大请求数
max-requests = 5000
#启动的用户
gid=www
uid=www
uwsgi_read_timeout=600# 指定接收uWSGI应答的超时时间,完成握手后接收uWSGI应答的超时时间,单位秒。
harakiri=1200 #请求超时时间,单位秒
上面的是位于/data/wwwroot/HelloWorldroot/uwsgi.ini
配置supervisor
vi /etc/supervisord.d/HelloWord.ini
[program:HelloWord]
user=root
command=/usr/local/bin/uwsgi /data/wwwroot/HelloWorldroot/uwsgi.ini -l 128 -p 400 --buffer-size 32768 #l 设置套接字侦听队列大小,-p 生成指定数量的workers/processes,buffer-size uwsgi包解析的内部缓存区大小#检测进程停止的信号
stopsignal=QUIT
#启动supervisord的时候自动启动
autostart=true
autorestart = true
redirect_stderr=true
stdout_logfile=/data/wwwroot/HelloWorldroot/uwsgi.log
stderr_logfile=/data/wwwroot/HelloWorldroot/uwsgi_error.log
supervisorctl reload #重新加载配置
supervisorctl status 查看启动状态
使用socket = /tmp/HelloWorld_uwsgi.sock 则使用代理访问,监听端口可以直接访问端口
nginx 配置
server { listen 80;
server_name 域名;
access_log /data/wwwroot/HelloWorldroot/logs/access.log;
error_log /data/wwwroot/HelloWorldroot/logs/error.log; location / {
include uwsgi_params;
#uwsgi_pass 127.0.0.1:9666;
uwsgi_pass unix:/tmp/HelloWorld_uwsgi.sock;
}
#静态文件路径
location /static/ {
alias /data/wwwroot/HelloWorldroot/HelloWorld/static/;
}
}
最新文章
- Redis集群搭建1
- 1264: [AHOI2006]基因匹配Match
- Resharper的使用
- 移动web开发准备知识点
- 【翻译】CEDEC2014跨世代多平台并行开发PS4版如龙维新开发的一年
- ZOJ3550 Big Keng(三分)
- 一个例子说明如何在DataSnap中使用FireDAC
- opencv之haar特征+AdaBoos分类器算法流程(二)
- php解决微信开发中用户昵称中的特殊字符与emoji表情写入mysql错误的问题
- 想成为Java高级工程师的看过来
- IEC2017级_1-2班两次博客作业成绩说明
- 知识在与温故、总结-再读CLR
- node服务的安装以及vue的安装
- 洛谷P4562 [JXOI2018]游戏(组合数学)
- iOS开发-- 使用VVDocumenter-Xcode添加代码注释
- Codeword CodeForces - 666C (字符串计数)
- windows系统定时重启自定义exe程序
- InnoDB: The log sequence number in ibdata files does not match
- php以数组做为配置文件的读取和写入操作
- 洛谷(P1006 传纸条)
热门文章
- 2017中国大学生程序设计竞赛-哈尔滨站 H - A Simple Stone Game
- 【刷题】BZOJ 4259 残缺的字符串
- bzoj 1934: [Shoi2007]Vote 善意的投票 (最小割)
- hihoCoder#1838 : 鎕鎕鎕 贪心
- [HAOI2006]受欢迎的牛 tarjan缩点 + 拓扑排序
- BZOJ5314:[JSOI2018]潜入行动——题解
- 洛谷 P1653 猴子 解题报告
- UVA.674 Coin Change (DP 完全背包)
- LAMP架构的搭建 和wordpress
- selenium - webdriver常用方法