您的位置:首页 > 运维架构 > 反向代理

Nginx(三):反向代理

2020-06-05 09:35 330 查看

我们本篇将通过两个实例进行对Nginx反向代理的学习。

1、概念基础

反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就是可以访问。我们只需要将请求发送到反向代理服务器上,有反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴漏的是代理服务器地址,隐藏了真实服务器地址。

反向代理的作用:

保证内网的安全,阻止web攻击,大型网站,通常将反向代理作为公网访问地址,Web服务器是内网
负载均衡,通过反向代理服务器来优化网站的负载

2、反向代理实例一

2.1、实例目标
通过nginx服务器的反向代理到本地的tomcat服务器上,我们可以通过修改hosts,设定一个域名访问,比如123.com

2.2、具体操作

  • 修改本地hosts:进入/etc目录vi hosts添加以下内容:127.0.0.1 www.123.com;
  • 启动nginx:进入nginx/sbin目录 ./nginx
  • 修改nginx配置文件:进入/usr/local/nginx/conf目录vi nginx.cong修改以下内容。
listen       80;	(这里是默认监听端口)
server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {
root   html;
proxy_pass http://127.0.0.1:8080;(在这里添加如下内容,映射到tomcat服务器)
index  index.html index.htm;
}
  • 更新修改:进入nginx/sbin目录 ./nginx -s reload
  • 启动tomcat:进入tomcat/bin目录 ./startup.sh

## 2.3效果截图

3、反向代理实例二

3.1、实例目标
我们本节的实例,是通过不同的路径分别访问不同的Tomcat服务器。

3.2、具体操作

  • 复制一个tomcat然后修改端口号和备用端口,这里以修改为8081为例。
  • 修改conf:在nginx.conf文件中加入
server {
listen       9001;
server_name  localhost;

location ~/a/ {
root   html;
proxy_pass http://127.0.0.1:8080/;
index  index.html index.htm;
}
location ~/b/ {
root   html;
proxy_pass http://127.0.0.1:8081/;
index  index.html index.htm;
}
}
  • 重启nginx

3.3 效果截图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: