杨梅冲
每天在想什么呢?
随笔 - 198,  文章 - 0,  评论 - 8,  阅读 - 17万

 

一、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
复制代码

 

posted on   杨梅冲  阅读(355)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示