首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不带端口号的Apache重定向

问不带端口号的Apache重定向
EN

Server Fault用户
提问于 2020-05-25 12:21:05
回答 1查看 959关注 0票数 0

这实际上是不可能的,但无论如何都要尝试:我想为Apache创建一个容器映像,而不需要作为root运行。因此,我设置了VirtualHost来监听端口8080,而不是任何<1024。在Apache之前有一个代理,它将80端口的流量定向到容器上的8080端口。但是,当我进行Apache重定向时,它总是将端口添加到位置标头。因此,重定向发送返回的是"Location:http://mysite:8080/index",这将失败,因为在端口8080上没有任何监听信息。

有没有办法告诉Apache不要将端口号添加到这些重定向中?我尝试过使用UseCanonicalPhysicalPort,但这似乎没有达到预期的效果。有没有办法阻止它把端口号加到任何东西上?

编辑

好的,看起来这种行为是硬编码的,当我查看mod_rewrite的源代码时,我注意到它调用"ap_is_default_port“来确定它是否应该在答案中添加端口。我认为,重写它的唯一方法是在源代码中重写这条线。如果有人知道更好的答案,我会全神贯注的。

EN

回答 1

Server Fault用户

发布于 2020-05-25 13:40:32

时间太长,不能发表评论

你在试图解决错误的问题

问题不在于Apache在Location头中包含它正在侦听的端口号(因为就Apache而言,这是正确的行为,它确实在监听端口8080),但问题是您的反向代理对此不正确。

通常,反向代理应该重写位置标头(和其他),并将后端服务器使用的内部URI的任何引用更改为客户端需要用来达到反向代理/负载均衡器的URI。

检查反向代理(treafik)配置,找出为什么不会发生这种情况。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1018604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档