当前位置: 首页 > 科技观察

什么是反向代理?如何配置Nginx反向代理?

时间:2023-03-15 22:00:52 科技观察

nginx是日常工作中必不可少的服务。其中nginx做的最多的就是防反向代理。今天就带大家详细了解一下nginx反向代理。让我们直截了当!安装nginx在开始本文之前,请确保您的服务器上已经安装了nginx。安装nginx非常简单。本文以ubantu系统为例,那么如何在ubantu系统上安装nginx呢?只需要一个命令:apt-getinstallnginx这里就不带大家安装了。安装完成后,执行一条命令:nginx-v如果出现如下结果:说明你的nginx安装成功,我这里安装的是1.14.0版本。使用apt-getinstallnginx命令安装nginx后,有几个默认目录需要记住:主程序:/usr/sbin/nginx配置文件:/etc/nginx静态文件:/usr/share/nginx日志文件:记住/var/log/nginx目录,后面的配置可能会用到。当然,如果是源码部署安装的话,可以自己定义路径。Nginx启动的几个重要命令:./usr/sbin/nginx或servicenginxstart重启:./usr/sbin/nginx-sreload或servicenginxrestart强行停止:./usr/sbin/nginx-sstop或servicenginxstop优雅停止:./usr/sbin/nginx-squit检测配置文件是否有错误:./usr/sbin/nginx-t指定配置文件:./usr/sbin/nginx-cxxx。conf什么是反向代理要理解反向代理代理服务器这个名词,首先要了解什么是代理服务器?代理服务器是放置在用户和网站之间以实现匿名的中间服务器。当通过代理服务器访问网站时,请求被发送到代理服务器,然后代理服务器将请求转发到网站。对于网站来说,请求看起来像是来自Proxy服务器,这就是正向代理,也叫正向代理。正向代理反向代理服务器有时需要匿名以增强其安全性。这种方式通常会在目标服务器之前放置一个代理服务器,让用户感觉代理服务器就是目标服务器,保证匿名性。这个过程称为反向代理。正向代理和反向代理的区别简单的区分方法就是正向代理位于客户端前面,保证服务器不直接与客户端通信。而反向代理位于服务器前面并确保没有客户端直接与该服务器通信。用两张图解释一下:正向代理就好比,一个公司老板要去某个工地要钱,老板不直接去,他会派一个公司代表,这个公司代表其实就是一个代理服务器,而代表公司办事,这是老板->工地的正向代理关系。反向代理就像,你去要钱,工地很聪明,知道你不想那么麻烦,你找会计公司,对外代表工地,所以看起来没什么区别从公司的主体。那么这个会计公司就是反向代理的服务器。Nginx反向代理Nginx是一个开源的Web服务器,可以用作反向代理。据知名统计网站统计,Nginx的市场份额一直在稳步增长,已经超过Apache:Nginx反向代理使用负载均衡来控制传入路由请求监控,重定向,记录流量泄露/保护后端服务加速网络访问Nginx反向代理示例如图,我们要实现一个效果,访问127.0.0.1:9999,反向代理到我们网站https://www.wljslmz.cn。首先看nginx的配置:server{listen9999;服务器名称本地主机;location/{proxy_passhttps://www.wljslmz.cn;}}listen:表示nginx监听的端口,也就是你在浏览器中输入的端口号。server_name:表示nginx监控的地址,即你在浏览器中输入的地址或域名。location:用于匹配不同的url,其中/代表根路径。proxy_pass:代理命令,这里我们代理到https://www.wljslmz.cn这个时候重新加载nginx配置,然后在浏览器中输入:http://localhost:9999代理之后:我们可以清楚的看到To代理成功!这里通过一个案例简单介绍一下nginx的反向代理,在生产测试的时候根据不同的场景进行配置。