后端相关程序员

CentOS+nginx+uwsgi+Django 环境部署

2016-04-21  本文已影响3133人  王增辉

原由

最近主业android不是很忙,于是看了下公司用到的后台及api用到的相关技术,虽然不是专业从事后端开发,了解后面的原理和机制对自己主业技术的提升还是很有帮助的。

需要储备的一些知识

让我们一步步开始搭建吧(吐血发出来的经验,网上可能很多人觉得太简单了,对初学者而言都略过了很多细节信息)

安装CentOS

升级python

安装nginx

安装pip

安装uWSGI

安装 virtualenv

建立目录

建立虚拟环境在上面的目录下面

在虚拟环境安装一些依赖通过pip,有些用不到, 主要是我的项目里用到的

Django 新建project

给项目配置uwsgi

配置uwsgi.ini 这样的文件,里面包含app 地址 端口之类的信息
启动时用 uwsgi uwsgi.ini
uwsgi.ini 配置如下:
[uwsgi]
vhost = false
plugins = python
socket = 127.0.0.1:9001
master = true
enable-threads = true
workers = 2
wsgi-file = /usr/local/apps/FutureCareer/FutureCareer/wsgi.py
virtualenv = /usr/local/apps/envfortest
chdir = /usr/local/apps/FutureCareer

注意注意注意!!! 上面目录FutureCareer是我自己的项目,其实跟用命令创建出来的mysite没啥区别,类比就可以了,改下带FutureCareer的目录即可

使用nginx 代理分发请求

server {
        listen 80;
        server_name host;
        location / {
            uwsgi_pass 127.0.0.1:9001;
            include /etc/nginx/uwsgi_params;
        }
        
        location /static {
            root /usr/local/apps/FutureCareer;
        }
        access_log off;
    }

host 配置成自己的服务器ip地址或者域名即可,这样我们从80端口监听到的一些请求就会被转发到9001端口的一些服务去做处理

配置了nginx分发后可能出现Django项目样式出现问题:

嗯,到这里应该就可以在服务器上跑通整个流程了,如果还不清楚可以留言咨询。

感情遇到问题?欢迎关注我的微信公众号,帮你解答:

宅男总动员
上一篇 下一篇

猜你喜欢

热点阅读