我希望我的 ApacheVirtualHost
响应相同的内容,无论请求的 URL 是什么。我知道使用包含静态响应的附加文件 (https://askubuntu.com/a/485017/600828)。
但是,我的回复内容非常简短和简单,我想知道是否可以直接将其包含在 Apache 站点配置文件中(这样我只需要部署和维护一个文件,而不是 2 个)。
答案1
您可以使用 ErrorDocument 指令在主 Apache httpd.conf 中定义 404 和其他错误条件的文本https://httpd.apache.org/docs/2.4/custom-error.html
当你的 documentRoot 为空,并且你不允许对裸域进行目录列表请求时,将触发 403 错误,而所有其他 URL 将触发 404,因此使用以下(丑陋的)解决方案,你可以得到你想要的
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /path/to/empty/dir
ErrorDocument 404 "some text"
ErrorDocument 403 "some text"
.,.
</VirtualHost >
请注意,您的一些文本需要足够长,以防止某些浏览器显示其自己的友好错误消息