KK91945564
![](http://p2.ttnews.xyz/loading.gif)
Nginx的反向代理
虚拟主机
一个server{} 就是一个虚拟主机
基于域名的
Nginx方向代理示例(代理Tomcat):
安装Tomcat
tar -zxvf apache-tomcat-7.0.61.tar.gz
解压Tomcat
cd apache-tomcat-7.0.61
bin/startup.sh
(关闭bin/shutdown.sh)
访问端口8080
http://192.168.17.9:8080/
通过访问Nginx来访问Tomcat
修改nginx.conf
server {
server_name www.nginx1.com
location / {
proxy pass http://192.168.17.9:8080/
}
}
此时,访问Nginx
http://www.nginx1.com
负载均衡的方向代理
反向代理配置nginx.conf:
upstream 名字{
server IP:PORT;
server IP:PORT;
}
server {
location / {
proxy_passhttp://名字;
}
}
示例:
修改配置文件:
vim nginx.conf
upstream nginx {
sever 192.168.17.9:8080
sever 192.168.17.10:8080
}
server {
location / {
proxy_passhttp://nginx;
}
}
启动2个Tomcat(在192.168.17.9和192.168.17.10两台机器上)
为了区分两个Tomcat,修改index.jsp
vim webapps/ROOT/index.jsp
(干掉
,因为里面有个tomcat.css资源文件,每次都要去请求这个文件,达不到轮询的效果)bin/startup.sh
service nginx reload
http://www.nginx1.com/
此时可以看到它轮询访问Tomcat(刷新就可以看到,因为两个Tomcat的index.jsp已经做了区分)。
————————————————
小玖说科技
#负责压缩数据流
gzip on;
gzip_min_length 1000;
gzip_types text/plain text/css application/x-javascript;
#设定负载均衡的服务器列表
#weigth参数表示权值,权值越高被分配到的几率越大
upstream hello{
server 192.168.68.43:8080 weight=1;
server 192.168.68.45:8080 weight=1;
}
server {
#侦听的80端口
listen 80;
server_name localhost;
#设定查看Nginx状态的地址
location /nginxstatus{
stub_status on;
access_log on;
auth_basic "nginxstatus";
auth_basic_user_file htpasswd;
}
#匹配以jsp结尾的,tomcat的网页文件是以jsp结尾
location / {
index index.jsp;
proxy_pass http://hello; #在这里设置一个代理,和upstream的名字一样
}
}
Nginx可以支持负载均衡,使网站获得更好的性能和稳定性。