apache - 如果请求标头格式错误,则不处理 Apache 虚拟主机
问题描述
我有 Apache/2.4.46 (Ubuntu) 配置了两个虚拟主机。假设默认(第一个)虚拟主机是www.example.com,另一个是 beta.example.com。如果我使用格式错误的标头向后者发出请求,例如
curl -H 'Content-Length: 0' -H 'Content-Length: 0' https://beta.example.com/
400 Bad Request
我将按预期获得带有标题的 Apache 错误页面。但是,页面中的地址行有Apache/2.4.46 (Ubuntu) Server at www.example.com Port 443
而不是预期的 beta.example.com。
我的假设是在处理虚拟主机之前检查标头的有效性,并且由于标头不正确,因此永远不会处理虚拟主机并使用默认值。是这样吗?如果是,此行为在哪里配置,有没有办法在错误消息中显示正确的服务器地址?
编辑:请参阅此 Github repo for Dockerfile 以及如何复制问题的说明。
解决方案
推荐阅读
- reactjs - React dnd - 拖放以更改输入的值
- batch-file - 如何获得 ERRORLEVEL 以返回 WMIC 远程命令执行?
- c# - JsonConvert.DeserializeObject System.NullReferenceException
- php - 作曲家如何知道使用了哪些类?
- c++ - 查找向量c ++中是否已存在结构
- html - 在 HTML Angular 中显示/隐藏 Angular 中的列表项
- text - 修复没有空格的英文文本
- javascript - 在我的 Mocha 测试报告中抛出 Silent Sinon 存根错误
- reactjs - 如何在构象提示中使用 NavLink
- scala - Scala 广播 + UDF