您的位置:首页 > 运维架构 > Nginx

将nginx配置成url_hash转发方式

2015-07-24 22:42 645 查看


将nginx配置成url_hash转发方式

所需软件名称及版本: pcre-8.02.tar.gz nginx-0.7.58.tar.gz Nginx_upstream_hash-0.3.1.tar.gz

1、安装pcre
tar -zxvf pcre-8.02.tar.gz
cd pcre-8.02/
./configure
make && make install


2、给nginx安装url_hash补丁
tar -zxvf nginx-0.7.58.tar.gz
tar -zxvf Nginx_upstream_hash-0.3.1.tar.gz
cd nginx-0.7.58/
patch -p0 < /var/tmp/loojoy/nginx_upstream_hash-0.3.1/nginx.patch


3、安装nginx
groupadd www
useradd www -g www
./configure --prefix=/usr/local/webserver/nginx
--user=www
--group=www
--add-module=/var/tmp/loojoy/nginx_upstream_hash-0.3.1
--with-http_ssl_module
--with-http_stub_status_module


4、检查nginx生成的配置文件是否正确
/usr/local/webserver/nginx/sbin/nginx -t

5、启动nginx 若nginx.conf检查通过,则启动nginx。
/usr/local/webserver/nginx/sbin/nginx


6、查看端口80 netstat -ant
7、通过浏览器访问: http://your_nginx_server_ip/ 若可以正常访问,则nginx安装成功。
8、修改nginx的配置文件如下:
-------------------[S]url_hash转发方式nginx.conf[S]--------------------
user www www;
worker_processes 10;
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
}

http
{
include mime.types;
default_type application/octet-stream;
keepalive_timeout 120;
tcp_nodelay on;

upstream your.website.name{
server your.tomcat.server.ip1:8080 ;
server your.tomcat.server.ip1:8080 ;

hash $request_uri;
}

server
{
listen 80;
server_name your.website.name;

location / {
proxy_pass http://your.website.name; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

log_format www_gjw_com '$remote_addr - $remote_user [$time_local] $request '
'"$status"$body_bytes_sent"$http_referer"'
'"$http_user_agent""$http_x_forwarded_for"';
#access_log /data1/logs/www.log www_gjw_com;

location /nginx_status {
stub_status on;
access_log off;
}
}
}

-------------------[E]url_hash转发方式nginx.conf[E]--------------------


9、添加nginx启动、关闭、重启脚本
-------------------[S]url_hash转发方式nginx启动、关闭脚本[S]--------------------

#!/bin/sh

CWD=`pwd`

case $1 in
start)
/usr/local/webserver/nginx/sbin/nginx;;
stop)
kill -2 `ps -ef|grep"/usr/local/webserver/nginx/sbin/nginx"|grep -v"grep"|awk '{print $2}' `
;;
restart)
cd"$CMD"
$0 stop
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

-------------------[E]url_hash转发方式nginx启动、关闭脚本[E]--------------------


更改该文件权限
chmod u+x nginx.sh

启动 nginx ./nginx.sh start
重启 nginx ./nginx.sh restart
关闭 nginx ./nginx.sh stop


Nginx_upstream_hash-0.3.1.tar.gz (4.9
KB)
下载次数: 29

Nginx_upstream_hash-0.3.tar.gz (4.9
KB)
下载次数: 11
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: