linux上配置nginx反向代理

本文详细解析了正向代理和反向代理的工作原理及应用场景。正向代理帮助客户端隐蔽地向服务器发送请求,而反向代理则保护服务器安全,通过代理服务器接收并转发客户端请求,同时起到负载均衡作用。

1、正向代理

场景:
A向B借钱–>B不借–>A发现C和B关系很好(A和C关系很好)–>A拜托C向B借钱(不要说是我借的)–>C就找B借钱–>B把钱借给C–>C把钱给A–>B并不知道谁真正在向自己借钱–>A达到了自己的目的
定义:
客户端向真实的服务器端发送请求,但是出于某种原因无法向真实的客户端发送请求,客户端就找到代理服务器,把请求发送给代理服务器,再由代理服务器把请求发送给真实的服务器,真实服务器并不知道具体访问我的客户端是谁(真实服务器看到的访问自己的是代理,并不是真实的客户端)

2、反向代理

场景:
交话费没有到账—>10086/10010/10001—>移动公司的总机–>人工操作–>总机会转接到人工–>打电话的人不知道具体谁接听电话–>达到了自己想要的结果
定义:
客户端向服务器端发送请求(服务器端是一个集群(4台服务器)),客户端并不知道具体访问哪一台服务器,客户端的请求就会被代理服务器所拦截,再由代理服务器把请求转交给集群中的某一个真实服务器,真实服务器最终把结果响应给代理服务器,代理服务器再把结果返回给客户端,客户端并不知道具体请求的服务器是真实服务器还是代理服务器
特点:
反向代理是和服务器端在一起的,所有的配置都必须要在服务器端完成,客户端并不知道真实的服务器是谁(客户端并不知道自己请求的是代理服务器还是真实服务器)

3、比对正向代理和反向代理

正向代理是和客户端在一起,两个人合伙欺骗服务器端
反向代理是和服务器端在一起,反向代理过滤/淘汰了某些客户端的非法请求
nginx做反向代理的时候

  1. 保证了整个系统的安全性
  2. 起到了分发请求的作用

4、Linux上配置nginx的反向代理

首先准备两台虚拟机,分别修改以下配置
4.1修改HOSTNAME

	vi /etc/sysconfig/network

4.2修改HOSTNAME和IP的映射

	vi /etc/hosts

4.3关闭防火墙

	service iptables stop

4.4关闭防火墙的开机启动

	chkconfig iptables off

4.5重启

	reboot

4.6使用xftp工具把nginx压缩包上传linux服务器上
4.7解压nginx

	tar -zxvf xxxxx

4.8创建快捷方式
进入nginx目录,这里的"nginx-1.17.3"需要手动输入linux中没有该路径

./configure --prefix=/usr/local/nginx-1.17.3

这时会报错
报错信息
原因是linux服务器上并没有nginx所必须要的配置包
4.9安装nginx所需要的配置包

yum -y install gcc pcre-devel openssl openssl-devel

看到以下信息说明安装成功:
安装成功的提示
4.10、再次创建快捷方式
在nginx的目录中

./configure --prefix=/usr/local/nginx-1.17.3

看到以下信息说明创建成功:
创建快捷方式成功提示
4.11、编译nginx 还需要在nginx的目录

make && make install

看到以下信息说明编译成功:
编译成功提示
4.12、启动nginx 不要再nginx的解压包目录操作
需要在快捷方式的目录执行(/usr/local/nginx-1.17.3/sbin)

./nginx

如果没有报错,说明启动成功
4.13、使用浏览器检测

192.168.23.150

看到以下页面说明安装成功:
安装成功的提示
反向代理的配置:
4.14、到/usr/local/nginx-1.17.3的config目录中进行配置

vim nginx.conf

注意:必须要在http{}标签里面实现所有的配置
必须要在http{}标签里面实现所有的配置
upstream tomcat_server(名字随便起,开心就好){
server 192.168.23.151:8080;(分号不要忘了!!!!)
}
这里的“ tomcat_server”名字可能会因为tomcat的版本问题,名字不能使用下划线,出现以下错误时,把名字改为“tomcatserver”即可
在这里插入图片描述
upstream必须要配置在server{}标签的上面
有加载顺序:
如果配置在了server的下面,最终因为加载顺序缘故(自上而下的加载顺序),server中加载不到upstream,则就会报错!!!!
配置server{}标签中location /{}标签
把location /{}标签中的所有内容全部删除
location / {
proxy_pass http://tomcat_server;(upstream的名字,必须要保持一致,否则无法找到映射)
}
4.15、重新nginx 需要在sbin目录

./nginx -s reload

4.16、在另一台服务器上配置tomcat
参考连接:配置tomcat
4.17、检测nginx的反向代理配置成功
两台服务器re
nginx代理服务器 192.168.23.150
web服务器(运行的web项目) 192.168.23.151
客户端发送请求—>web服务器—>被代理服务器拦截—>再由代理服务器把请求转发给web服务器
客户端访问的nginx代理服务器ip,获取的web上的tomcat的页面
6.18.其实反向代理很好的保证真实服务器的安全性,也就是说隐藏了真实服务器的地址!!!
客户端可以通过请求代理服务器的形式直接访问到真实服务器,客户端毫无察觉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值