首页 > 编程知识 正文

nginx完全开发指南,apache反向代理

时间:2023-05-06 20:49:49 阅读:115912 作者:2490

Openresty/nginx代理https下坑记录的背景需求是客户在服务器上部署了argocd服务。 因为我们需要控制服务入口,所以我们打算使用openresty创建反向代理的其他访问控制逻辑。

后台服务强制使用https,客户也需要https。 客户自己将b域名绑定到了服务上。 我们为客户定义了新的域名a。 最终效果是客户访问https://A域名,并实际展示https://B域名的内容。

Ps :这听起来很奇怪,毕竟我们之前的nginx代理移动到同一个域名,或者在ip下,移动到另一个域名是很奇怪的。

即使部署途中遇到漏洞很多的人,也花了很多时间,但在这里记录。 主要有两个孔:

访问a域名,拦截实际展示b域名的内容代理https :即https服务,访问传输到https的坑一: a域名,实际展示b域名的内容是很长的虽然尝试了各种rewrite命令等,但域名会跳至b域名。 这不符合需要。 最后,我们看到这篇博文Nginx与数字服务器CLB合作完成了请求标头的主机重写,我们只需要更改header中主机字段的值,将其更改为后台服务b的原始域名即可

解决方法:在位置中指定字段主机的值

proxy_set_header Host A_hostname; 主机字段角色the headerfieldinarequestprovidesthehostandportinformationfromthetargeturi, enablingtheoriginservertodistinguishamongresourceswhileservicingrequestsformultiplehostnamesonasingleipaddress。

aclientmustincludeahostheaderfieldinallhttp/1.1请求消息sages.iftherequesteduridoesnotincludeaninternethostnamefortheserverves thenthehostheaderfieldmustbegivenwithanemptyvalue.an http/1.1 proxymustensurethatanyrequestmessageitforwardsdoescontainanappropriatehostheaderfieldthatidentifiesthervicebeingrequested sed http/1.1 serversmustrespondwitha 400 (bad请求) statuscodetoanyhttp/1.1 requestmessagewhich

请求的“主机”标头字段显示来自目标URI的主机和端口信息。 这样,源服务器可以在为单个IP地址上的多个主机名请求提供服务时区分资源。

简单来说,服务器在Host字段中区分同一ip计算机上的不同服务,从而实现多个虚拟主机。 参考:主机在HTTP请求标头中的作用

接下来

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。