我怀疑这不可能做到,但无论如何都要进行。在静态站点上,有没有办法显示用户在使用Apache指令ErrorDocument将404 File Not Found错误重定向到自定义页面时尝试访问的URL ?例如,如果您尝试:
http://www.fredriley.org.uk/dingbat/arsebiscuits
默认的404错误说:
The requested URL /dingbat/arsebiscuits was not found on this server.
因此URL必须位于环境变量中。我可以在自定义错误文档中找到它吗?我想告诉用户URL,而不是只给他们一个通用的错误文档。我知道我可以在PHP中轻松地做到这一点,但该网站仅包含静态HTML文档。
答案 0 :(得分:1)
拥有静态网站并不会阻止您拥有动态错误页面。您可以使用托管服务提供的任何服务器端技术。
如果您可以使用PHP,您只需选择一个静态模板,将其扩展名更改为*.php
并添加一些动态代码段:
<p><?php echo htmlspecialchars($_SERVER['REQUEST_URI']); ?></p>
如果您可以使用SSI,则非常相似:
<p><!--#echo var="REQUEST_URI" --></span></p>
REQUEST_URI
变量包含用户键入的URL的本地部分(哈希除外)。这是一个不错的选择。