uWSGI 结合 nginx 配置动静分离
2024-09-08 15:49:38
uWSGI 结合 nginx 配置动静分离
目录
1 环境准备
- 上传一个动态站点:/www/supercrm
2 初始配置文件
2.1 uwsgi 配置文件
[uwsgi]
http = :8080
# 项目路径
chdir = /www/aclabe
# uwsgi的文件
wsgi-file= aclabe/wsgi.py
# 虚拟环境
virtualenv = /root/venv
# 进程个数
processes = 2
# 线程个数
threads = 2
# 后台启动,指定日志的输出
daemonize = /www/aclabe/django.log
# 清除临时文件
vacuum = true
# python文件发生改变自动重启
py-autoreload = 1
# 设置后台运行,保存日志
daemonize = uwsgi.log
# 启动项目
uwsgi --ini file
2.2 Nginx配置文件
server {
listen 80;
server_name crm.aclab.com;
location / {
include uwsgi_params;
uwsgi_pass 10.1.19:8080;
}
location /static {
root /www/supercrm;
}
}
2.3 Django配置
# settings.py
SATAIC_ROOT=os.path.join(BASE_DIR,'static/')
# 收集动态文件
python3 manager.py collectstatic
3 配置文件设置
nginx与uwsgi不在同一台服务器上,两者使用TCP socket通信,配置如下所示:
# uwsgi配置文件下
socket= :8080 # Nginx 配置文件下
location / {
include uwsgi_params;
uwsgi_pass 10.1.19:8080;
}
nginx与uwsgi在同一台服务器上,优先使用本地机器的unix socket进行通信,这样速度更快。配置如下所示:
# uwsgi 配置文件下
socket = /www/supercrm/supercrm.sock
# 启动uwsgi后会生成该文件 # Nginx 配置文件下
location / {
include uwsgi_params;
uwsgi_pass unix:/www/supercrm/supercrm.sock;
}
如果nginx与uwsgi不在同一台服务器上,两者使用http协议进行通信,配置如下所示:
# uwsgi配置文件下
socket= :8080 # Nginx 配置文件下
location / {
# 注:proxy_pass后面http必不可少!
proxy_pass http://10.1.19:8080;
}
4 有大佬写的很详细了
最新文章
- TCP打洞和UDP打洞的区别 (转)
- 用Linux自带的Logrotate来管理日志
- Codeforces Beta Round #77 (Div. 1 Only) C. Volleyball (最短路)
- android-android各大手机系统打开权限管理页面
- goldengate 12c对oracle DB的改进
- OpenJudge计算概论-计算鞍点
- SQL 语句记录
- C++问题-Qt Visual Studio Add-in
- python 的内建函数
- axis2之webservice
- T-SQL语句中中括号([])的用法是什么,什么时候该用
- HDU 4228 Flooring Tiles 反素数
- 修改smali文件,重打包,实现调用第三方SO文件
- maven依赖jar包更新,业务jar需同步更新(业务jar依赖API)
- 对抗栈帧地址随机化/ASLR的两种思路和一些技巧
- Docker最全教程之使用 Visual Studio Code玩转Docker(二十)
- logback配置信息
- Cocos Creator JS web平台复制粘贴代码(亲测可用)
- vim 快捷键(update)
- lientDataset的Delta与XML相互转换
热门文章
- sql注入的一丢丢
- <;二>;强弱指针使用场景之 多线程访问共享对象问题
- Spring03:案例转账功能(事务问题)、动态代理解决、AOP
- 【Shell案例】【打印指定行用sed、for循环、head和tail配合使用】4、输出第5行的内容
- day33-JSON&;Ajax01
- WinUI(WASDK)使用MediaPipe检查手部关键点并通过ML.NET进行手势分类
- 2021-01-26HDOJ_Lowest_Bit
- Jmeter 逻辑控制器之吞吐量控制器(Throughput Controller)
- 如何在 .Net 7 中将 Query 绑定到数组
- 【运维笔录】局域网实现HTTPS访问,只需Nginx + mkcert