Django + Nginx + Uwsgi 配置服务器

27 篇文章 0 订阅
1 篇文章 0 订阅

Django + Nginx + Uwsgi 配置服务器


Django

tar -zxvf Django-1.6.11.tar.gz
cd Django-1.6.11
python setup.py install
  • 新建项目、应用
django-admin.py startproject ~/jiarenyf # 项目名为jiarenyf
cd ~/jiarenyf
python manage.py startapp ydf # 应用名为ydf
  • 运行应用
 python manage.py runserver 0.0.0.0:4567 # 发布的ip

Uwsgi

  • 安装
sudo apt-get install python-dev pip # 需要更新python
sudo pip install uwsgi # 需要pip安装,才能直接支持django
  • 支持django
cd ~/jiarenyf
uwsgi --http :4567 --chdir ~/jiarenyf --module ydf.uwsgi
# 但是css、js文件无法加载,需结合nginx
  • 配置文件写法(结合nginx)
<!-- 文件路径:~/jiarenyf/uwsgi/ydf_socket.xml -->
<uwsgi>
    <socket>/dev/shm/ydf.sock</socket>
    <!-- <socket>127.0.0.1:9000</socket> -->
    <!-- 上述两种选一种即可,对应的nginx配置要相同 -->
    <chdir>~/jiarenyf</chdir>
    <module>ydf.wsgi</module>
    <processes>4</processes>
    <enable-threads/>
    <chmod-socket>666</chmod-socket>
    <!-- 必须是666…… -->
    <listen>1024</listen>
    <!-- linux默认是128,要修改配置,如下小节 -->
    <!-- <daemonize>~/jiarenyf/uwsgi/ydf_uwsgi.log</daemonize> -->
    <!-- 若使用daemonize参数,则uwsgi会在后台运行,并将输出记录在~/jiarenyf/uwsgi/ydf_uwsgi.log中> -->
</uwsgi>

<!-- 命令行: uwsgi -x ~/jiarenyf/uwsgi/ydf_socket.xml -->
  • 修改系统socket最大连接数
vim /etc/sysctl.conf
# 添加:
net.core.somaxconn=1024
# 退出vim
sysctl -p # 使之生效

Nginx

  • 安装
sudo apt-get install nginx
  • 收集静态文件
vim ~/jiarenyf/jiarenyf/settings.py
# 添加:
    STATIC_ROOT=~/jiarenyf/ydf/static
# 退出vim
cd ~/jiarenyf
python manage.py collectstatic
  • 配置文件编写
# 文件路径:~/jiarenyf/nginx/ydf_nginx.conf
upstream ydf_django{
    server unix:///dev/shm/ydf.sock;
    # server 127.0.0.1:9000;
    # 二选一,要与~/jiarenyf/uwsgi/ydf_socket.xml中socket对应
}

server{
    listen 4567;
    server_name  0.0.0.0;
    charset utf-8;

    client_max_body_size 5M;

    access_log ~/jiarenyf/nginx/access.log;
    error_log ~/jiarenyf/nginx/error.log;

    location /{
        include /etc/nginx/uwsgi_params;
        uwsgi_pass ydf_django;
    }

    location /static{
        alias ~/jiarenyf/ydf/static;
    }

    location /media{
        alias ~/jiarenyf/ydf/media;
    }
}
  • 使配置文件生效
sudo ln ~/jiarenyf/nginx/ydf_nginx.conf -s /etc/nginx/site-enabled
sudo service nginx restart
# 或 sudo nginx -s reload

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值