接上篇nginx配置,然后再准备两台web服务器:
nginx服务器:192.168.0.241
web1:192.168.0.141
web2:192.168.0.142
一、两台web服务器先安装http:
[root@host1 ~]# yum -y install httpd
[root@host1 ~]# /etc/init.d/httpd start
[root@host1 ~]# echo "Hello,I'm 192.168.0.141" > /var/www/html/index.html
[root@host1 ~]# curl http://192.168.0.141
Hello,I'm 192.168.0.141
[root@host2 ~]# yum -y install httpd
[root@host1 ~]# /etc/init.d/httpd start
[root@host2 ~]# echo "Hello,I'm 192.168.0.142" > /var/www/html/index.html
[root@host2 ~]# curl http://192.168.0.142
Hello,I'm 192.168.0.142
#注意先看下服务器上是否有安装http,如httpd启动不起来,看下是否80端口在被占用
二、nginx服务器配置负载均衡:
[root@host3 conf]# cd /usr/local/nginx/conf/
[root@host3 conf]# vim nginx.conf
…………
http { #定义源服务器组
upstream team {
server 192.168.0.141;
server 192.168.0.142;
}
…………
…………
server {
#定义监听端口
listen ;
#定义访问域名
server_name www.load.com;
location / {
#调用服务器组
proxy_pass http://team;
root html;
index index.html;
}
}
…………
…………
}
:wq
[root@host3 conf]# nginx -s reload
#继续添加nginx服务器访问域名
[root@host3 conf]# vim /etc/hosts
…………
192.168.0.241 www.nginx1.com www.nginx2.com www.load.com
:wq
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.141
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.141
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
注意:如果访问不了看下是否防火墙限制了,8080端口如被占用可改为其他端口
三、设置权重:
#接上面的配置
[root@host3 conf]# vim nginx.conf
…………
http { upstream team {
#设置权重参数,机器的性能越好,可以设置参数越大
server 192.168.0.141 weight=;
server 192.168.0.142 weight=;
}
…………
:wq
[root@host3 conf]# nginx -s reload
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.141
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.141
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
[root@host3 conf]# curl http://www.load.com:8080
Hello,I'm 192.168.0.142
附:nginx优化参数(http模块)
server_tokens off; #添加此行,不显示nginx具体版本号
include mime.types; #设定mime类型,类型由mime.type文件定义
sendfile on; #提升nginx读文件性能
tcp_nodelay on; #关闭tcp的缓延迟发送数据,即立即相应
keepalive_timeout 65; #连接超时时间
gzip on; #开启gzip压缩
gzip_min_length 1000; #小于1000k的不压缩,越压缩越大
gzip_comp_level 4; #压缩级别是4(1-9个级别)
gzip_types …… #允许压缩的类型,/usr/local/nginx/conf/mime.types有类型
client_header_buffer_size 1k; #设定请求缓存
large_client_header_buffers 4 4k; #最大请求缓存个数与容量
#先根据client_header_buffer分配,如果不够,再根据large值分配
#设定虚拟主机配置:
#禁止访问 .htxxx 文件