我在 openSUSE 上运行着 apache 2.4,多年来一直运行良好。几周前,我从 openSUSE 15.0 升级到 15.1,突然 apache 无法提供静态文件。
我发现如果我将 apache 设置为仅监听 ipv4,问题就消失了。
经过进一步挖掘,现在我已正常启用端口 80,仅监听 ipv4。一切按预期工作。然后端口 81 监听 ipv6,此时请求不会返回任何内容。奇怪的是,如果是 php 页面,我会从请求中得到响应主体,但如果是静态文件,则什么都得不到。apache 日志文件显示文件已发送,且大小正确。我测试的浏览器(在 Windows 机器上)将获取所有响应标头,但不会收到响应主体。任何监听 ipv6 的接口都存在此问题,即使通过 ipv4 和 ipv6 进行访问也是如此。仅监听 ipv4 的接口/端口不会出现此问题。
我完全搞不懂这个问题 - 不知道问题出在哪里,也不知道如何进一步调试。有人知道吗?
—马德斯