nginx+fastcgi+django的一次尝试
2011-02-22 09:54
323 查看
nginx+fastcgi+django的一次尝试
早有耳闻nginx,现在试用一下。我的 机器ip为10.0.40.83,就在一台机器上测试,多台机器也是一样。 1. 安装nginx 在公司的机器是win,所以就在win下安装nginx。若果你在linux下安装过如lighttpd,过程是一样的,并没有太多的差异。OS因素是次要,实际生产环境要使用linux。 到http://nginx.net/ ,下载nginx-0.6.32-win32-setup.exe。后面...... 2. 安装django1.0以及flup1.0 下载这2个软件,找到setup.py脚本,python setup.py install或python setup.py即可安装。当然要先要安装python,并配置好python环境变量。 3.创建工程 在D:/software/django/sites/下创建一个django工程mysite,如:pwd/django-admin.py startproject mysite 在mysite里添加一个py文件first.py from django.http import HttpResponse def index(request): return HttpResponse('first django page .....') 修改url.py,在patterns里添加: (r'^mysite/$','mysite.first.index') 4. 配置nginx 在nginx安装目录下,一般在C:/nginx/conf下,修改nginx.conf文件,关键几点如下: worker_processes 2;#开2个nginx进程,在任务管理器可以看到这2个子进程和一个nginx主进程,一般按CPU数配置,我的习惯是2*CPU(核)数 events { worker_connections 64;#每个进程链接队列长度,可按实际设置 } http { ... #省略其它配置 #和后端的2个fastcgi 服务通讯,注意fastcgi ,后面用到,weight是权重 upstream fastcgi { server 10.0.40.83:8051 weight=1; server 10.0.40.83:8052 weight=1; } server { listen 80; server_name localhost; ...#省略其它配置 location / { # 指定 fastcgi 的主机和端口,这里的fastcgi指的是上面的upstream fastcgi_pass fastcgi; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param QUERY_STRING $query_string; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_pass_header Authorization; fastcgi_intercept_errors off; } ...#省略其它配置 } ...#省略其它内容 } 4. 运行 运行nginx(administrator用户),在开始菜单里。 运行2个fastcgi服务,开2个cmd窗口,在mysite目录下: python manage.py runfcgi host=10.0.40.83 port=8051 method=threaded daemonize=false python manage.py runfcgi host=10.0.40.83 port=8052 method=threaded daemonize=false http://10.0.40.83/ 或http://127.0.0.1/ 或http://localhost/可以看到输出 结果。 5. 破坏尝试 开2个fastcgi的cmd窗口,终止其中一个访问看看,其实没有任何影响。 再把运行的停止,停止的启动看看,还是能访问。 若2个都终止,发现不能访问。 在测试过程中注意C:/nginx/logs下的log的输出信息。 nginx没有多少文档,只能看一些只言片语。有几个比较不错的参考文章。 张宴的一个ppt: 使用Nginx轻松实现开源负载均衡,其blog地址为:http://blog.s135.com/index.php http://www.ibm.com/developerworks/cn/web /wa-lo-nginx/ http://nginx.net/ http://sysoev.ru/en/ 其它的在网上google吧,总会有点的。 |
相关文章推荐
- nginx+fastCGI 部署Django
- Linux + Nginx + Django + FastCGI
- Nginx+fastcgi 部署Django项目
- windows下nginx+FastCGI+Django攻略
- CentoS下Django1.3 & Nginx(FastCGI & flup) & MySQL安装配置详解
- 使用Tornado+Nginx部署Django的一种尝试
- 搭建nginx + python + django +memcached+ mysql +fastcgi 环境
- Linux+Python+Django+Nginx+FastCGI+AMF 安装实记
- windows下nginx+FastCGI+Django完全攻略 .
- Nginx+FastCGI+Django请求静态(css,js,img等)
- Nginx+uWSGI或fastcgi部署Django项目
- Centos5.5搭建nginx + python + django +memcached+ mysql +fastcgi 环境
- Debian7下初次尝试Nginx+Uwsgi部署Django开发环境
- Django部署在nginx上(FastCgi)的一些常见问题
- windows环境下用nginx+FastCGI方式运行Django
- linux下nginx+python+fastcgi部署总结(django版)
- Django+nginx+fastcgi 配置
- 自用的几个小Shell Script Django(FastCGI) & Nginx
- 搭建nginx + python + django +memcached+ mysql +fastcgi 环境
- Windows下以fastCGI方式部署nginx+django+flup