Centos安装Nginx+uWSGI+Django

前情提要:安装nginx及相关知识

----------------------------------------------------------------------------------

1、安装uWSGI

pip install uwsgi
uwsgi --version

2、测试uWSGI

新建test.py,内容如下

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return "Hello World"

执行命令

uwsgi -s 127.0.0.1:8080 -w test.py

-s 代表启动一个socket,监听对应端口,当前设置为8080端口

-w 为 --wsgi-file 的简写,指定运行文件

打开浏览器,访问 127.0.0.1:8080 查看是否可以准确访问。

3、新建Django工程

安装Django

pip install django

新建test工程

cd ~
django-admin.py startproject test

4、uWSGI配置文件

uwsgi.ini 文件

[uwsgi]
socket = 127.0.0.1:8080 // 绑定端口
master = true           // 主进程
vhost = true            // 多站模式
no-site = true          // 多站模式时不设置入口模块和文件
workers = 2             // 子进程数
reload-mercy = 10       // 设置在平滑的重启(直到接收到的请求处理完才重启)一个工作子进程中,等待这个工作结束的最长秒数
vacuum = true           // 退出、重启时清理文件
max-requests = 1000     // 为每个工作进程设置请求数的上限
limit-as = 512          // 限制每个uWSGI进程的虚拟内存使用数
buffer-size = 32768     // 用于uwsgi包解析的内部缓存区大小。默认是4k

pidfile = ~/uwsgi8080.pid    // 在失去权限前,将pid写到指定的pidfile文件中。
daemonize = ~/uwsgi8080.log   // 使进程在后台运行,并将日志打到指定的日志文件或者udp服务器

对于 pidfiledaemonize 的路径需要自行配置,端口也需自行修改

** 修改 nginx.conf 中 http.server.location 的值 **

修改后如下:

location / {
    include uwsgi_params;               # uwsgi程序
    uwsgi_pass 127.0.0.1:8080;          # 在uwsgi.ini中的socket端口
    uwsgi_param UWSGI_SCRIPT test.wsgi; # test.wsgi为django生成的wsgi配置文件,在test/test/目录下
    uwsgi_param UWSGI_CHDIR /root/test; # 绑定django工程的根路径
    index index.html;
    client_max_body_size 35m;
}

对于其test 需要和自定义的项目名称一致

5、启动

加载配置文件

uwsgi --ini uwsgi.ini

启动nginx

使用浏览器打开对应服务器ip地址即可

当django项目中修改后,需要重新加载uwsgi

uwsgi --reload pid文件路径
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值