LNMP-Nginx反向代理
Nginx反向代理
Nginx提供反向代理的模块http proxy,这个模块是默认的,不需要重新编译模块。通常情况下,Nginx代理一般常用的环境是,提供web服务的服务器放在内网,暴露在外网上容易遭受攻击,但是这样就无法提供给用户正常访问,这时候就需要有一台proxy服务器和内网之间是互通的,做一个中间代理供外网用户访问。用户只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
实验环境:
host1:192.168.1.20 (后端Tomcat服务器)
host2:192.168.1.10 (proxy服务器)
1:编写代理conf文件
[root@host2 ~]# vim /usr/local/nginx/conf/vhosts/proxy.conf
server{
listen 80;
server_name www.test.com;
location /{
proxy_pass http://192.168.1.20;
proxy_set_header Host $host;
}
}
2:重新加载Nginx
[root@host2 vhosts]# nginx -s reload
3:浏览器访问proxy服务器地址,测试结果
4:除了浏览器访问方式,也可以通过curl命令测试结果
[root@host2 ~]# curl -x127.0.0.1:80 www.test.com
记录每一天有趣的事情!!