Centos系统下载大全 | Redhat系统下载大全 | Windows2012系统下载大全 | Windows2008系统下载大全| CMS教程 | 网站地图 51运维网-专注Linux/Unix系统安全运维!
当前位置:51运维网 > 架构 > Linux架构 > 正文

nginx+uwsgi来部署Django

时间:2014-12-20 21:28 来源:未知 作者:www.51ou.com 阅读:

1. 软件下载地址:

 

uwsgi 

 

wget http://projects.unbit.it/downloads/uwsgi-latest.tar.gz

flup 

 

wget http://www.saddi.com/software/flup/dist/flup-1.0.2.tar.gz

django

 

wget https://www.djangoproject.com/m/releases/1.7/Django-1.7.1.tar.gz

 

2. 安装

uwsgi 

$ tar zxf  uwsgi-1.9.6.tar.gz
$ cd uwsgi-1.9.6
uwsgi-1.9.6$ python3.2 uwsgiconfig.py --build
安装完成后会在当前目录生成uwsgi 二进制文件,可手动把它复制到/usr/sbin,运行时就不用加绝对路径
uwsgi-1.9.6$ sudo cp uwsgi /usr/sbin/uwsgi

 

django

$ tar zxf Django-1.5.1.tar.gz
$ cd Django-1.5.1
Django-1.5.1$ python3.2 setup.py install

 

3. 新建django项目

 

安装成功,新建django项目(最好不要在网站根目录htdocs下新建项目,不然别人会查看到你的源代码)
$ cd /tmp/
tmp$ sudo django-admin.py startproject onetwo
此时会生成一个新的文件夹,其结构如下

onetwo/
    manage.py
    onetwo/
        __init__.py
        settings.py
        urls.py
        wsgi.py

测试实验环境服务
$ sudo python3.2 manage.py runserver

Validating models...

0 errors found
April 22, 2013 - 15:50:53
Django version 1.5, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/ Quit the server with CONTROL-C.

lynx访问地址http://127.0.0.1:8000/,如出现“Welcome to Django”字样,则说明建项目成功。

其它IP地址访问:python3.2 manage.py runserver 0.0.0.0:8000

 

4. 关联django到nginx

服务器已经在跑PHP站点,现在新生成一个虚拟服务器
$ sudo vi /etc/nginx/nginx.conf
加入以下内容
    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    server {
        listen       8000;
        #server_name test.com;

        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:9090;
        }
    }

完成后重启下nginx服务
$ sudo /etc/rc.d/nginx restart

 

如安装了libxml2,也可用如下方法处理:
在app目录创建个django.xml文件
/tmp/onetwo$ sudo vi django.xml
内容如下:

 

 

uwsgi.xml 

<uwsgi>

    <socket>:9090</socket>

    <chdir>/tmp/onetwo</chdir>

    <module>django_wsgi</module>

    <processes>4</processes> 

    <daemonize>uwsgi.log</daemonize>

    <module>manage</module>

    <pythonpath>..</pythonpath>

    <env>DJANGO_SETTINGS_MODULE=onetwo.settings</env>

    <module>django.core.handlers.wsgi:WSGIHandler()</module>

</uwsgi> 

启动方式:
/tmp/onetwo$ uwsgi -x django.xml

感谢您对【51运维网 http://www.51ou.com/】的支持,我们为您免费提供《nginx+uwsgi来部署Django》技术文章,《nginx+uwsgi来部署Django》详细使用和说明,有时《nginx+uwsgi来部署Django》可能不完善、敬请谅解!如果《nginx+uwsgi来部署Django》有错误请给我们留言,我们将尽快修复文章错误,如果您觉得本站不错,请分享给周围的朋友!谢谢!

顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
验证码:点击我更换图片