码迷,mamicode.com
首页 > 其他好文 > 详细

使用nginx+uwsgi部署django应用

时间:2015-04-21 18:06:40      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:django   nginx   uwsgi   

使用过django来开发网页的人都知道,django的manage.py自带了一个runserver命令,这个命令使得本地调试非常方便,然而在真正上线网站时对并发能力的支持非常重要,本教程教你用nginx+uwsgi来将django应用部署在服务器上。

教程:

1.首先保证django项目在本地调试完毕。(这是废话)

2.在服务器安装好nginx和uwsgi两个软件。(yum或者apt-get)

3.找到nginx.conf文件(位置在/usr/local/nginx/conf/nginx.conf),可以把这个nginx.conf文件作为模版,拷贝为另一个你自己的配置文件zcy.conf

4.修改zcy.conf,如果权限不够在第一行加上

user root your_username; #用户名是在服务器中的用户名

主要修改zcy.conf的server段如下:

server {
	listen 8183;#本地运行端口
	server_name 10.10.255.115;#本地运行ip
	
	location / {
	include uwsgi_params;
	uwsgi_pass 127.0.0.1:8077; #(本地环回端口)
	}
	
	location /static {
	root /home/your_username/.../mysite; #到mysite文件夹的绝对路径
	#用nginx来管理静态文件,否则会出现css样式丢失问题
	}
	
}


5.下一步在django项目文件夹mysite下创建两个文件:

django_wsgi.py文件内容如下:

#coding=utf-8
import os
import sys
import django.core.handlers.wsgi 
#if not os.path.dirname(__file__) in sys.path[:1]:
    #sys.path.insert(0, os.path.dirname(__file__))
reload(sys)
sys.setdefaultencoding('utf8')

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
 
#application = django.core.handlers.wsgi.WSGIHandler()
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()


注意:上面注释掉的两行是一些教程中给出的,版本比较老,函数神马的都用不了了~

conf.xml配置文件内容如下:

<uwsgi>  
  <socket>:8077</socket>  #本地环回端口,与zcy.conf文件中的相对应
  <chdir>/home/your_username/.../mysite</chdir>  #与zcy.conf中的路径一致,到mysite的绝对路径
  <module>django_wsgi</module>  #指定与本文件同级的django_wsgi.py文件
  <processes>4</processes>  <span style="white-space:pre">	</span>#进程数设置为4
  <daemonize>uwsgi.log</daemonize>  #日志文件
</uwsgi> 
基本设置为以上,更多设置可以查看uwsgi配置文件的参数说明。

6.以上均设置好后,就可以上线网站了。

首先,开通服务器上的nginx服务。

命令:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/zcy.conf

(如果该命令出现端口占用的提示,就杀掉上一个占用端口的nginx进程)

然后,在mysite目录里,开通uwsgi。

命令:uwsgi -x conf.xml


7.最后在浏览器中输入10.10.255.115:8183(取决于服务器的ip和端口)去看看吧,一切正常!










使用nginx+uwsgi部署django应用

标签:django   nginx   uwsgi   

原文地址:http://blog.csdn.net/messiandzcy/article/details/45172029

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!