我正在使用IIS和PHP。我有一个自定义404页面,这是一个PHP脚本。在此页面上,我想显示访问的原始URL。我正在尝试以下文本加服务器变量,但它只是显示站点名称,HTTP_REFERER通常是空白的。
echo 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['HTTP_REFERER'];
用于在PHP / IIS中获取原始URL的正确服务器变量是什么。
这是我的web.config中调用自定义404页面的相应部分:
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/404.php" responseMode="Redirect" />
</httpErrors>
答案 0 :(得分:3)
我没有使用重定向,而是执行ExecuteURL
<error statusCode="404" path="/404.php" responseMode="ExecuteURL" />
以及描述页面的变量
echo 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];