实现nginx反向代理(附nginx教程)

原标题:实现nginx反向代理(附nginx教程)

一,什么是反向代理:

反向代理服务器架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。

二,反向代理的主要作用:

目前web网站使用反向代理,除了可以防止外网对内网服务器的恶性攻击、缓存以减少服务器的压力和访问安全控制之外,

还可以进行负载均衡,将用户请求分配给多个服务器。

三,配置反向代理(Nginx):

Nginx作为近年来较火的反向代理服务器,安装在目的主机端,主要用于转发客户机请求,后台有多个http服务器提供服务,

nginx的功能就是把请求转发给后面的服务器,决定哪台目标主机来处理当前请求。

(1)模拟2个http服务器作为目标主机, 分别将这两台主机的端口改为8081和8082;

(2)配置IP域名如下:

192.168.72.49test8081.com

192.168.72.49 test8082.com

(3)配置nginx.conf,如下:

upstream tomcatserver1 {

server 192.168.72.49:8081;

}

upstream tomcatserver2 {

server192.168.72.49:8082;

}

server {

listen 80;

server_name test8081.com;

#charset koi8-r;

#access_log logs/test8081.com.log main;

location / {

proxy_pass ; //反向代理服务器的地址

index index.html index.htm;

}

}

server {

listen 80;

server_name test8082.com;

#charset koi8-r;

#access_log logs/test8082.com.log main;

location / {

proxy_pass ;

index index.html index.htm;

}

}

(4) 重启Nginx服务,验证结果。

service nginx restart

使用浏览器访问test8081.com,由于nginx反向代理接受客户机请求,找到server_name为test8081.com的server节点, 根据proxy_pass对应的http路径,将请求转发到upstream tomcatserver1上,即端口号为8081的tomcat服务器。

关注“动力节点Java资源库”下载课程返回搜狐,查看更多

责任编辑: