关于Django + Nginx + uWSGI 配置总结

目录:

  1. 下载Django项目
  2. 配置uWSGI
  3. 配置Nginx
  4. SSH 端口转发

环境:

Red Hat 4.4.7-18(Linux version 2.6.32)
Django (1.11.5)
uWSGI (2.0.15)
python (2.7.13)

一. 下载Django项目

这个步骤非常简单,就是把你写好的Django项目放到服务器上。

二. 配置uWSGI

1,使用pip install uWSGI

如果慢的话,可以使用国内源安装
清华:http://mirrors.tuna.tsinghua.edu.cn/pypi/simple
豆瓣:https://pypi.doubanio.com/simple(推荐)
使用方法,例如:pip install -i https://pypi.doubanio.com/simple uWSGI

2,配置uWSGI
在项目目录下,生成wsgi.ini文件,并设置内容如下:

[uwsgi]
# 你的Django项目的根文件夹,要绝对路径
chdir=/your/django/project/root/dir
# 你的Django项目的虚拟环境的文件夹,要绝对路径
virtualenv=/your/django/project/virtual/dir
# uWSGI的 socket 端口
socket=:8084
# uWSGI的 http 端口
http=:8000
# 设置初始的 uwsgi 进程为主进程(主进程可以产生worker processes)
master=1
# 设置处理请求的进程数
processes=4
# 自定义的UID,随意
uid=youruid
# 自定义的GID,随意
gid=yourgid
# django wsgi 文件位置
file=/your/project/dir/wsgi.py
# 配置 uwsgi 启动后,PID保存到的文件
pidfile=wsgi.pid
# 通过管道配置 uwsgi 的文件。例如:echo R > wsgi.ff 就可以重启 uwsgi 服务器
master-fifo=wsgi.ff
# 配置log输出
daemonize=wsgi.log

3,启动uWSGI

uwsgi –ini wsgi.ini

4,测试 uWSGI

curl localhost:port

三,配置Nginx

1,安装Nginx

yum install nginx

2,配置Nginx
打开默认的配置文件/etc/nginx/conf.d/default.conf

server {
    listen       8001 default_server;
    #listen       [::]:80 default_server;
    server_name  _;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location /admin{
         include uwsgi_params;
         uwsgi_pass localhost:8084;
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }

}

3,测试修改后的配置文件

sudo nginx -t

4,启动Nginx

sudo nginx

5,测试整个环境

curl localhost:8001

四,配置端口转发

当前的测试环境状态是:
1,从个人电脑上,无法直接到服务器上,中间需要一个跳板机。即:

client(我) –ssh–> 跳板机 –ssh–> 服务器
(跳板机:就是一个中间服务器,安全程度比较高,把服务器和外部环境隔离。想要对服务器进行操作的话,必须先登录跳板机)

2,而且服务器没有公网IP,即:从个人机器无法直接连接到服务器上。

在这种情况下,想要访问服务器的80等端口的话,需要进行ssh端口转发

ssh yourname@跳板机IP -L 本机端口:服务器IP:服务器端口
这个命令的意思是,当有请求要访问“本机端口”时,把请求通过“yourname@跳板机IP”,转发到“服务器IP:服务器端口”上。

这样的话,当你在本机通过localhost:8001端口进行访问时,就可以直接请求到服务器的8001端口了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值