我有一个像自定义消息显示器一样工作的php文件。我通过GET传递一些变量,并根据它显示一条消息。它也可以作为404错误页面。问题是;它具有相对引用,由于可移植性而非常需要,但在ErrorDocument
重定向到该文件之后它们似乎不起作用。
文件的位置:/a/b/c/custom_message_displayer.php
httpd.conf
设置为:
ErrorDocument 404 /a/b/c/custom_message_displayer.php?e=404
并且错误来自子目录,例如。 /a/blah
,有效目录在这种情况下为/a/
,而不是/a/b/c/
重定向的ErrorDocument
,导致错误链接文件(相对css,js,include()路径)。
我做了一个使用附加文件的解决方法。但我很担心这一点,并想知道是否有更简单的方法可以做到这一点。也许基于httpd.config
的重定向也会更改活动目录?
解决方法:
ErrorDocument 404 /additional_file.php
→此文件重定向使用:
header('Location: /a/b/c/custom_message_displayer.php')
还保留/转发GET查询。
然后该文件在其目录中执行,并且所有相关链接都有效。
是否有更简单的方法来执行上述操作?感谢您的任何建议。