Nginx反向代理:windows下实现tomcat服务的访问

1. Nginx概述:

Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强,可以作为静态页面的web服务器,同时支持CGI协议的动态语言。
2. 反向代理:

首先说明一下正向代理,类似于我们访问goole.com,需要在用户浏览器端配置代理服务器(能够访问google的地方,如香港、美国等地的代理服务器),然后浏览器访问google时,通过配置的代理服务器代替本地完成向google服务器的请求,并返回结果给本地服务器。正向代理是隐藏真正的请求的浏览器IP等客户端信息,而反向代理,是在真正的数据资源服务器与客户端增加泛向代理服务器,客户端发送请求给服务端,反向代理服务器会根据请求端口或者url选择目标服务器获取数据,再返回给客户端,此时仅暴露代理服务器的地址,隐藏真实服务器的IP地址。

3. 实验需求分析

Linux下配置tomcat服务器,配置端口为38080,模拟真实的资源服务器;在同一台Linux服务器上配置nginx代理服务器,监听80端口;windows下模拟域名-IP映射,浏览器请求www.123.com,完成对Linux服务器资源的访问。

4. 实验

本实验中tomcat资源服务器和nginx反向代理服务器位于同一台linux服务器上。

1)tomcat配置conf/server.xml文件中,配置端口为38080,启动tomcat服务器。浏览器输入http://ip:38080,看到tomcat的默认首页说明资源服务器配置成功。

2)nginx安装,此处注意找到真正的nginx.conf配置文件,路径为/etc/nginx/nginx.conf;默认首页的位置为/usr/share/nginx/html/index.html。浏览器输入http://ip,返回nginx的默认首页说明nginx安装成功。

3)windows下输入http://www.123.com,返回的是默认页面,目的是让返回的页面为配置的资源服务器的tomcat首页。

首先,配置模拟的域名-ip映射文件,浏览器输入域名访问时,默认先找本地hosts文件,解析域名对应的ip地址,如果找不到则访问远程的DNS域名解析服务器。因此配置本地的域名IP映射文件hosts(C:/Windows/System32/drivers/etc/hosts),添加映射关系,域名访问默认的端口是80;

202.**.***.13(Linux服务器IP)	www.123.com

然后,配置nginx代理服务器ngingx.conf(/etc/nginx/nginx.conf)

 server {
        listen       80;
        server_name  www.123.com; #这里指定浏览器访问的域名

        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        location / {
                        proxy_pass http://202.***.***.13:38080; #代理服务器要将请求转发的资源服务
                        proxy_connect_timeout 600;
                        proxy_read_timeout 600;
        }
    }

重新载入nginx

nginx -s reload

此时,Windows浏览器输入域名www.123.com可以完成对资源服务器的访问

Nginx反向代理:windows下实现tomcat服务的访问_第1张图片

至此,完成域名反向代理

你可能感兴趣的:(Nginx反向代理:windows下实现tomcat服务的访问)