一、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