nginx.conf
#user webmaster webmaster;
worker_processes 8;
worker_rlimit_nofile 51200;
error_log logs/nginx_error.log crit;
#pid logs/nginx.pid;
events {
use epoll;
worker_connections 100000;
}
http {
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent post:$request_body "$http_referer" '
'"$http_user_agent" $request_time';
#sendfile on;
tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 20;
tcp_nodelay on;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size 256;
client_header_buffer_size 1k;
#large_client_header_buffers 4 2k;
request_pool_size 4k;
output_buffers 4 32k;
postpone_output 1460;
client_max_body_size 10m;
client_body_buffer_size 256k;
gzip off;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_http_version 1.0;
gzip_types text/plain application/x-javascript text/css application/xml;
#gzip_vary on;
#避免重复请求,nginx不响应 499
proxy_ignore_client_abort on;
access_log on;
#log_format main '$status|$time_local|http://$host$request_uri|$remote_addr|$http_x_forwarded_for|$http_referer|$http_user_agent|$request_body';
log_format main '$status|$time_local|http://$host$request_uri|$remote_addr|$http_x_forwarded_for|$http_user_agent|$upstream_addr|$upstream_response_time|$request_time';
include vhost/vhost_*.conf;
}
a.test.com.conf
upstream api.test.com {
server 127.0.0.1:8084 ;
}
server {
listen 80;
server_name a.test.com b.test.com;
index index.html index.htm index.jsp;
root /letv/web/a.test.com;
proxy_buffer_size 4k;
proxy_buffers 16 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_read_timeout 180;
access_log /letv/logs/nginx/api.pv.log main;
location ~ \.rar$ {
deny all;
}
location / {
proxy_pass http://a.test.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#指定参数跳转
location ~ .*/ip.do?$ {
if ( $args ~* "type=a" ) {
proxy_pass http://10.180.151.70:8084;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8084;
add_header Vary Accept-Encoding;
}
location /html{
root /data/logs ;
}
}
切换脚本 nginx-flow-swith.sh
if [ $# -eq 0 ];then
echo "args not null or illegal";
echo "please input 149 150 156 157"
else
server_args=""
for i in $@;do
if [ $i -eq 149 ]; then
server_args="$server_args server 10.100.54.149:8084;"
elif [ $i -eq 150 ]; then
server_args="$server_args server 10.100.54.150:8084;"
elif [ $i -eq 156 ]; then
server_args="$server_args server 10.180.153.156:8084;"
elif [ $i -eq 157 ]; then
server_args="$server_args server 10.180.153.157:8084;"
else
echo "server ip illegal";
exit 0;
fi
done
if [ "$server_args" = "" ]; then
echo "server ip illegal";
else
echo $server_args
sed "1a $server_args" /data/web/nginx_boss/conf/vhost_api.boss.letv.conf.template > /data/web/nginx_boss/conf/vhost/vhost_api.boss.letv.com.conf
/data/web/nginx_boss/sbin/nginx -t -c /data/web/nginx_boss/conf/nginx.conf
/data/web/nginx_boss/sbin/nginx -s reload -c /data/web/nginx_boss/conf/nginx.conf
echo "nginx switch ok"
fi
fi
执行 sh nginx-flow-swith.sh 149 156
1a 表示在第一行后面追加
8684

被折叠的 条评论
为什么被折叠?



