本文详细介绍了Nginx正向和反向代理的区别和基本原理。原文根据示例代码非常详细,对大家的学习培训或者工作都有一定的参考价值,有需要的朋友可以参考一下。
一、正向代理和反向代理的区别
正向代理客户端,反向代理网络服务器。
1.1转发代理
转发代理网络服务器位于客户端和群集服务器中。为了更好地从服务器读取数据,客户端向代理服务器发送请求,并指定整个目标网络服务器。代理网络服务器将总体目标中缺少的对象的数据信息传送给客户端。这里,客户端必须执行一些转发代理设置。
插图:科学互联网接入
转发代理中的代理是客户端的请求。
1.2反向代理
反向代理,客户端不知道代理,客户端不需要所有设备就可以浏览。客户端向反向代理网络服务器发送请求,反向代理网络服务器选择整个目标网络服务器来读取数据,然后将数据返回给客户端。此时,反向代理网络服务器和整体目标网络服务器作为网络服务器对外开放,暴露代理服务器ip,隐藏真实网络服务器IP地址。
二。nginx反向代理的应用
在nginx的环境变量nginx.conf中创建新的云虚拟主机,
server{ listen8080; server_namelocalhost; location/category/{ proxy_passhttp://localhost; } }在上述设备中,
Listen表示nginx想要监控的端口号;
Server_name是浏览nginx时在电脑浏览器中键入的网站域名。您可以立即填写详细的ip地址。如果要关联几个,可以用空分开。
指示在监视此端口号时Locationnginx应匹配的url。如果浏览Nginx的url包含/category/,将实现代理。
Proxy_pass表示nginx将客户端请求代理到的总体目标。
注意这里proxy_pass的路径写法。如果像上面那样路径末尾没有/表示绝对路径,nginx在共享请求时就不容易从初始url中提取/category/。比如一个电脑浏览器浏览http://localhost:8080/category/findall,那么nginx发出的具体外发请求的详细地址就是http://localhost/category/。
如果proxy_pass的整体目标路径末尾配有一个/例如,如果计算机浏览器浏览http://localhost:8080/category/findall,那么nginx发出的具体请求的详细地址就是http://localhost/findAll。
配备时需要决定是否有必要带/不带,否则nginx在具体应用中总会报404不正确。
我这里的设备在我的后端开发套接字路径中包含/category,所以我应用了绝对路径,保存了这个。
文章里的内容就这些了。期待对大家的学习和培训有所帮助,也期待大家的应用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)