在Linux上使用Apache 2.4,与几个虚拟服务器,每个虚拟服务器与自己的DocumentRoot,我想为Apache主服务器ErrorDocument本地redirect执行一个单一的perl脚本相关的Apache主DocumentRoot,而不是每个下perl脚本虚拟服务器。
会发生什么是虚拟服务器的文档根被用来构build文件系统path,而不是主服务器的文档根。
有什么办法可以configurationApache服务器只使用一个本地redirect脚本,而不是(显然)必须在每个虚拟服务器的DocumentRoot中(相同)的脚本?
您可以通过在全局(服务器)上下文中放置以下指令(即,不在任何<VirtualHost>块内)来设置单个全局错误文档。 它将适用于所有的虚拟主机。 这显示了一个静态的HTML文件,但它可以很容易地修改为一个Perl脚本
别名/error-404.html /path/to/my/errors/error-404.html ErrorDocument 404 /error-404.html <目录“/ path / to / my / errors”> 要求全部授予 </目录>
您可以将ErrorDocument设置为外部资源,例如
ErrorDocument 500 http://error.example.com/server_error.html
所以你可以参考你的主虚拟主机上的脚本。
信不信由你logging在ErrorLog的文档中 。