注:系统已安装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