【发布时间】:2020-06-17 20:39:09
【问题描述】:
Apache 文档说明 ProxyPreserveHost:
启用后,此选项会将 Host: 行从传入请求传递到代理主机
否则:
ProxyPass 行中指定的主机名(已使用)
在 Apache conf 中,有没有办法将自定义主机设置为不是其中任何一个的主机?
例如ProxySetHost customHostName
//编辑
在nginx中,可以使用这个注解:
nginx.ingress.kubernetes.io/proxy-ssl-name:
允许设置 proxy_ssl_name。这允许覆盖用于验证代理 HTTPS 服务器证书的服务器名称。当与代理 HTTPS 服务器建立连接时,此值也会通过 SNI 传递。
Apache httpd 中有类似的东西吗?
【问题讨论】:
-
ProxyPreserveHost表示它将在浏览器中保留相同的 Apache httpd 主机并从后端服务器获取数据,而无需更改浏览器中的 HostName。更改 URL 中的主机名有什么具体要求吗? -
@Pandurang 我想将代理请求反向到 nginx 中的特定服务器块。这需要我将请求中的 Host 设置为相应的服务。我无法在 ProxyPass 行中设置它,因为它必须设置为 ip,因为我无法更改 DNS。
-
如果您使用 Apache httpd 作为前端,使用 Nginx 作为反向代理,那么只有 Apache HostName 对用户或浏览器可见。
-
@Pandurang 我使用 Apache httpd 作为 nginx 的反向代理。不确定你的意思是否相同。您是说无法将主机设置为其他内容(减去 ProxyPass 和 ProxyPreserveHost)?
标签: apache