Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用.htaccess从404页面获取推荐人URL_.htaccess - Fatal编程技术网

使用.htaccess从404页面获取推荐人URL

使用.htaccess从404页面获取推荐人URL,.htaccess,.htaccess,我正在使用.htaccess获取推荐人URL。例如,如果有人单击example.com/dogfood-post-1链接,但未找到该帖子,我如何在404.php页面中获取example.com/dogfood-post-1 URL ErrorDocument 404 /404.php 这并不是一个完整的答案,因为它取决于具体的配置,但这应该对您有所帮助 将var\u export($\u SERVER)添加到您的404.php中,查看哪个键包含您需要的值。如果您只需要domain.com/do

我正在使用.htaccess获取推荐人URL。例如,如果有人单击example.com/dogfood-post-1链接,但未找到该帖子,我如何在404.php页面中获取example.com/dogfood-post-1 URL

ErrorDocument 404 /404.php

这并不是一个完整的答案,因为它取决于具体的配置,但这应该对您有所帮助


var\u export($\u SERVER)
添加到您的404.php中,查看哪个键包含您需要的值。

如果您只需要domain.com/dogfood-post-1上的url,您可以使用:

$actual_link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
资料来源:

如果您将它们发送到另一个页面,您可以设置一个会话并将url放入会话中,然后将其显示在404页面上

您应该向用户显示404错误页面,而不是将用户重定向到404页面。在.htaccess中,您可以添加:

ErrorDocument 404 /appName/404.php

将您的绝对路径放在404.php之前,以便正确显示它。

这是否回答了您的问题?如果某人单击某个帖子,但未找到该帖子。示例domain.com/post-about-cat而该post未找到,如何在404.php页面中获取domain.com/post-about-cat?@hdflix您能将自定义代码放到404.php中吗?如果是,按照我的建议添加
var\u导出($\u服务器)
,打开一篇不存在的帖子(这样你就可以看到404页面)并查看输出。查找您请求的原始URL。然后您就可以将is用作$\u服务器[…某个密钥…]。这很可能是$\u SERVER['REQUEST\u URI']或$\u SERVER['REDIRECT\u URL'],但这实际上取决于您如何准确配置重定向到404.php(提示-有多种方法)。使用此方法,我将获得domain.com/404.php,如果我有帖子,domain.com/blog/pet-food你点击了它,但没有找到帖子我在blog文件夹ErrorDocument 404/pages/404.php中有一个htaccess文件,我需要在htaccess中做些什么吗?也许ErrorDocument 404/pages/404.php?id=%{HTTP_REFERER}如果您将
/404.php
作为请求的URI,那么您的服务器必须实际重定向到ErrorDocument,而这一点在一开始就不应该做。(因为那时搜索引擎bots&co.将不再识别这是一个合适的404,因为他们看到“新”URL中的200 OK状态代码。即使该脚本本身以404状态代码响应,现在仍然是错误的URL。)猜你的.htaccess中可能有比这更多的东西?如果是这样,请编辑您的问题,并显示完整内容。@hdflix我已更新了我的awnser,以便您可以显示404页面而不是重定向