如何记录哪一页被“删除”;未找到“;?(使用htaccess、php、http\u referer尝试自定义错误页面)

如何记录哪一页被“删除”;未找到“;?(使用htaccess、php、http\u referer尝试自定义错误页面),php,.htaccess,http-referer,Php,.htaccess,Http Referer,我只是想知道怎么走 在我的网站上找不到该网页的链接 使用下面的.htaccess代码,当请求一个不存在的页面时,用户被重定向到my_404.php Options -Indexes ErrorDocument 404 http://mysite.com/my_404.php 如果我必须找到网页的链接,但没有找到,我该怎么做 例如,A.php是有效的网页,而b.php不是。因此,如果我在A.php上并尝试查看b.php(不存在的页面)。htaccess将我重定向到我的_404.php,我在上面

我只是想知道怎么走 在我的网站上找不到该网页的链接

使用下面的.htaccess代码,当请求一个不存在的页面时,用户被重定向到my_404.php

Options -Indexes

ErrorDocument 404 http://mysite.com/my_404.php
如果我必须找到网页的链接,但没有找到,我该怎么做

例如,A.php是有效的网页,而b.php不是。因此,如果我在A.php上并尝试查看b.php(不存在的页面)。htaccess将我重定向到我的_404.php,我在上面看到
HTTP\u REFERER
作为A.php。。但我想要的是“有人试图查看B.php”。我该怎么做

谢谢你的帮助

编辑


请看:我不想签入日志文件。我在问第页上的一些事情。谢谢。

myu 404.php

var_dump($_SERVER);

我想你会找到你需要的。:-)

这可能已经在Apache日志文件中完成了。您可以只解析数据,而不是记录两次

Stackoverflow存档:

其他相关内容:

  • 通过PHPClasses.org

您要查找的变量称为$\u SERVER['REQUEST\u URI']。它保存客户端向服务器发出的原始请求

您可以看到其他“$\u服务器”变量的列表

编辑:

在谷歌搜索一段时间后,您的问题是错误页面是用http://qualifier指定的。更改您的htaccess,以便将ErrorDocument指定为本地文件,例如:

ErrorDocument 404 /www/my_404.php 

执行此操作后,$\u服务器['REQUEST\u URI']应保持正确的值。

当您使用远程ErrorDocument URL(如
http://mysite.com/my_404.php
,Apache将向客户端发送一个指向该URL的重定向,这就是为什么您无法像Matt Bridges建议的那样从
$\u服务器['REQUEST\u URI']
获取导致404的URL。 您可能希望尝试使用本地ErrorDocument(无方案和服务器名),如下所示:

ErrorDocument 404 /my_404.php

我怀疑
$\u服务器['REQUEST\u URI']
会返回最初请求的URL。

我不想检查日志文件。我只想在404页上查一下。我不想记录两次数据,做了。没有什么有用的。我的意思是,提到b.php,如果您尝试“ErrorDocument 404/my_404.php”(没有主机)会怎么样?@Matt。。是的,现在效果很好。谢谢你帮助我@steef也回答了同样的问题。所以我应该把它标记为答案!!