注:系统已安装nginx。
一:下载,解压nginx sticky模块。
# cd /usr/local/src # wget http://nginx-sticky-module.googlecode.com/files/nginx-sticky-module-1.1.tar.gz # tar -zxvf nginx-sticky-module-1.1.tar.gz
二:查看现有nginx的编译参数,加上sticky模块参数重新编译。
#/usr/local/nginx/sbin/nginx –V nginx version: nginx/1.3.14 built by gcc 4.1.2 20080704 (Red Hat 4.1.2-54) TLS SNI support disabled configure arguments: --prefix=/usr/local/nginx--user=nobody --group=nobody --with-select_module --with-poll_module--with-file-aio --with-http_ssl_module --with-http_realip_module--with-http_gzip_static_module --with-http_secure_link_module--with-http_sub_module --with-http_stub_status_module--add-module=/root/nginx-http-concat/
关闭nginx,加上sticky模块重新编译nginx(建议先备份配置文件)
# service nginx stop # cd /usr/local/src/nginx-1.3.14 #./configure --prefix=/usr/local/nginx --user=nobody --group=nobody --with-select_module --with-poll_module --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_gzip_static_module --with-http_secure_link_module --with-http_sub_module --with-http_stub_status_module --add-module=/root/nginx-http-concat/ --add-module=/usr/local/src/nginx-sticky-module-1.1 # make && make install
三:修改配置文件,添加sticky相关参数
在类似如下位置添加参数(红色字体)
vi upstream.conf
upstream test.com
{
sticky; ---sticky
server192.168.1.17:9082 weight=5 max_fails=2 fail_timeout=30s;
server192.168.1.81:9082 weight=5 max_fails=2 fail_timeout=30s;
}#vi web.conf
server {
listen 9082;
server_name *.test.com;
access_log /data/logs/test.com access_log;
error_log /data/logs/test.com.errorlog;
set $proxy_pass test.com;
location / {
root html;
index index.html index.htm;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://test.com;
add_headerCache-Control no-store;
}
四:启动nginx,网页测试。
#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 或者 #service nginx start
本文出自 “扮演上帝的小丑” 博客,转载请与作者联系!
原文:http://icenycmh.blog.51cto.com/4077647/1794452