让 Apache 发送配置文件中定义的响应

让 Apache 发送配置文件中定义的响应

我希望我的 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 > 

请注意,您的一些文本需要足够长,以防止某些浏览器显示其自己的友好错误消息

相关内容