做个笔记,防止忘记。
安装环境: ubuntu8.04
首先确定有了python的头文件(/usr/include/python2.5),没有的话apt一下:)
sudo apt-get install python2.5-dev
1.nginx安装
$ ./configure --add-module=/path/to/mod_wsgi/ --prefix=/usr/local/nginx
$ make && make install
2.mod_wsgi安装
$ cd mod_wsgi-0.0.6/
$ sudo python setup.py --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf --sbin-path=/usr/local/nginx/sbin
3.打开/usr/local/nginx/conf/nginx.conf
user nobody; #工作进程属主
worker_processes 2; #工作进程,一般的等于CPU核数
daemon off;
master_process on;
error_log logs/error.log info;
pid logs/nginx.pid;
events {
use epoll; #linux2.6+
worker_connections 1024; # 每个工作进程允许最大的同时连接数
}
env HOME;
#可以将你的project加入python的sys.path
env PYTHONPATH=/path/to/your/project;
#解决python执行egg包的权限问题
env PYTHON_EGG_CACHE=/tmp;
http {
include conf/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_port - $remote_user [$time_local] $request '
'"$status" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip off;
#ssl on;
#ssl_certificate conf/server.crt;
#ssl_certificate_key conf/server.key;
wsgi_python_optimize 2;
wsgi_python_executable /usr/bin/python;
#wsgi_python_home /usr;
#wsgi_enable_subinterpreters on;
server {
listen 80;
server_name localhost;
include conf/wsgi_vars;
#wsgi_middleware wsgiref.validate validator;
#wsgi_middleware paste.lint;
location / {
#client_body_buffer_size 50;
#你的 module path 和 WSGI application 的名称,默认是application, 我这里用的是mod_wsgi自带的examples。
wsgi_pass /your/path/to/examples/nginx.py;
wsgi_pass_authorization off;
wsgi_script_reloading on;
wsgi_use_main_interpreter on;
}
location /wsgi {
#client_body_buffer_size 50;
wsgi_var TEST test;
wsgi_var FOO bar;
wsgi_var EMPTY "";
# override existing HTTP_ variables
wsgi_var HTTP_USER_AGENT "nginx";
wsgi_var HTTP_COOKIE $http_cookie;
wsgi_pass /your/path/to/examples/nginx-2.py main;
wsgi_pass_authorization on;
wsgi_script_reloading off;
wsgi_use_main_interpreter on;
}
}
}
4.启动nginx:
$ cd /usr/local/nginx
$ sudo sbin/nginx -c conf/nginx.conf
5.打开浏览器,输入http://127.0.0.1/wsgi/ 输出如下内容:
Environment:
{'FOO': 'bar',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'gb2312,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'zh-cn,zh;q=0.5',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_HOST': '127.0.0.1',
'HTTP_KEEP_ALIVE': '300',
'HTTP_USER_AGENT': 'nginx',
'PATH_INFO': '/',
'SCRIPT_NAME': '/wsgi',
'TEST': 'test',
'wsgi.errors': <ngx_wsgi.Log object at 0xb7c1b050>,
'wsgi.input': <cStringIO.StringI object at 0xb7c5c4d0>,
'wsgi.multiprocess': True,
'wsgi.multithread': False,
'wsgi.run_once': False,
'wsgi.url_scheme': 'http',
'wsgi.version': (1, 0)}
sys.argv:
sbin/nginx
-c
conf/nginx.conf
sys.path:
/usr/local/nginx/sbin
/usr/lib/python2.5/site-packages/ipython-0.8.4-py2.5.egg
/usr/lib/python2.5/site-packages/flup-1.0-py2.5.egg
/usr/lib/python2.5/site-packages/DBUtils-0.9.4-py2.5.egg
/usr/lib/python2.5/site-packages/zope.interface-3.4.1-py2.5-linux-i686.egg
/usr/lib/python2.5/site-packages/mercurial-1.0.1-py2.5-linux-i686.egg
/usr/lib/python2.5/site-packages/python_memcached-1.43-py2.5.egg
/usr/lib/python2.5/site-packages/bsddb3-4.7.1-py2.5-linux-i686.egg
/home/bob/projects/passport/trunk/country_cn/apps
/usr/lib/python25.zip
/usr/lib/python2.5
/usr/lib/python2.5/plat-linux2
/usr/lib/python2.5/lib-tk
/usr/lib/python2.5/lib-dynload
/usr/local/lib/python2.5/site-packages
/usr/lib/python2.5/site-packages
/usr/lib/python2.5/site-packages/Numeric
/usr/lib/python2.5/site-packages/PIL
/usr/lib/python2.5/site-packages/gst-0.10
/var/lib/python-support/python2.5
/usr/lib/python2.5/site-packages/gtk-2.0
/var/lib/python-support/python2.5/gtk-2.0
/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode
sys.stderr:
<ngx_wsgi.Log object at 0xb7c1b070>
pid:
6384
分享到:
相关推荐
nginx的mod_wsgi模块, 适用于nginx 0.5.34, 其他版本有对应的patch(尚不支持0.7.x, 对于0.6.x版本打过附带的patch之后编译可能还会有问题). 建议: python编译的时候推荐使用--eneble-shared, 否则需要修改mod_wsgi...
- 修改 Apache 的配置文件 httpd.conf,加载 mod_wsgi 模块,并指定包含自定义配置文件的路径。 6. **配置 Apache 和 Django:** - 创建 Apache 的自定义配置文件 `apache_django_wsgi.conf`,设置静态资源和 ...
2. 安装Nginx_mod_h264_streaming - 下载nginx_mod_h264_streaming-2.2.7.tar.gz,并解压到适当目录。 - 进入解压后的目录,按照官方文档或README文件的指示编译并安装模块。通常包括配置、编译和安装步骤: ``` ...
安装完成后,配置Apache的虚拟主机,将Django应用与mod_wsgi连接起来。在`httpd.conf`或新建的虚拟主机配置文件中添加以下内容: ```apacheconf WSGIScriptAlias / /path/to/your/django/project/wsgi.py ...
### Nginx安装与后端健康检查模块配置详解 #### 一、Nginx环境搭建与核心组件安装 **1.1 基础环境准备** - **操作系统**: CentOS 6.5 - **基本服务器配置**: 在安装过程中选择了“基本服务器”配置。 **1.2 安装...
部署 `nginx_mod_h264_streaming` 模块需要编译 Nginx 时包含此模块源码,然后按照官方文档或社区指南配置 Nginx 配置文件,设置流媒体路径、分段参数、加密密钥等选项。安装完成后,需要重启 Nginx 服务以应用新的...
在Windows环境下,配置前端Nginx与后端多Apache服务器(使用Django WSGI)是一项常见的任务,特别是在部署大型Web应用时。这样的架构能够充分利用Nginx的静态资源处理能力,以及Apache对动态内容的高效处理。以下将...
原来是Nginx配置文件中的worker_connections配置太低,只有50,导致与php-fpm交互过程中超出了connections限制,出现了500错误。直接将此参数的值改成10240就解决了此问题。 您可能感兴趣的文章:Nginx中worker ...
tar zxvf Nginx_upstream_hash-0.3.tar.gz ``` 3. **创建Nginx用户** 创建一个名为nginx的用户,通常用于运行Nginx进程,以提高安全性。 ``` useradd nginx ``` 4. **安装PCRE库** 编译并安装PCRE库,它是...
通过浏览器访问Nginx服务器的IP地址,如`http://your_nginx_server_ip/`,如果能正常访问,表示Nginx安装成功。 8. **配置url_hash**: 编辑Nginx的配置文件(通常为nginx.conf),在`http`块内添加`upstream`...
在Nginx配置文件中,`nginx_upstream_check_module`的使用涉及到一些特定的指令,如`check`、`check_interval`、`check_timeout`等。以下是一个简单的示例: ```nginx http { upstream backend { server backend1...
- **安装mod_wsgi**:通过pip安装mod_wsgi,并确保其版本与Python和Apache兼容。 - **配置Apache**:编辑Apache的配置文件httpd.conf,添加mod_wsgi模块,并设置虚拟主机。需要指定Django项目的路径、...
官方nginx 镜像不带主动健康,本镜像将 nginx_upstream_check健康检查 打包到了镜像中。
《FastDFS+nginx+_cache集群安装配置超详细步骤》 FastDFS是一款开源的高性能、轻量级的分布式文件系统,适用于互联网行业的大量小文件存储。它具有高可用性、高扩展性和低延迟等特点,常被用于图片、视频等多媒体...
在“05尚硅谷_Nginx_hit1qr_nginx尚硅谷_nginx_”的学习资源中,我们将深入探讨 Nginx 的安装、配置以及如何实现负载均衡。 **一、Nginx 的安装** Nginx 的安装通常分为编译安装和使用软件包管理器安装两种方式。...
linux nginx nginx_upstream_jvm_route
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了...其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
P505_Nginx视频教程_nginx配置文件基本配置 P606_Nginx视频教程_nginx配置文件events配置 P707_Nginx视频教程_nginx配置文件http配置之基本配置 P808_Nginx视频教程_nginx配置文件http配置之server配置 P909_...
mod_zip, 用于 Nginx的流式压缩归档程序 mod_zip mod_zip动态装配压缩文件。 it stream Nginx 代理代码的原生服务器stream组件文件,这样每次组装( 潜在的) 字节的归档文件时,进程都不会占用超过a 内存。mod_zip...
1. **获取源码**:首先,你需要从项目仓库下载`nginx_tcp_proxy_module`的源代码,如本例中的`nginx_tcp_proxy_module-master`压缩包。 2. **编译Nginx**:在编译Nginx时,将模块源码添加到配置中。这通常涉及以下...