4

エラーをデータベースに記録する必要があるPHPサイトで作業しています。そのため、次のように.htaccessファイルを設定しました。

ErrorDocument 404 /404.php

404.phpには、データベースにログを挿入するために必要なすべてのロギング機能が含まれています。私が問題を抱えているのは、404をトリガーしたファイルのURLを取得することです。

$_SERVERスーパーグローバル配列の内容は次のとおりです。

[HTTP_HOST]=>{省略}
[HTTP_USER_AGENT] => Mozilla / 5.0(Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7)Gecko / 30091221 Firefox / 3.5.7
[HTTP_ACCEPT] => text / html、application / xhtml + xml、application / xml; q = 0.9、* / *; q = 0.8
[HTTP_ACCEPT_LANGUAGE] => en-us、en; q = 0.5
[HTTP_ACCEPT_ENCODING] => gzip、deflate
[HTTP_ACCEPT_CHARSET] => ISO-8859-1、utf-8; q = 0.7、*; q = 0.7
[HTTP_KEEP_ALIVE] => 300
[HTTP_CONNECTION]=>キープアライブ
[パス]=>/ usr / local / bin:/ usr / bin:/ bin
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache / 2.2.8(Ubuntu)
[SERVER_NAME]=>{省略}
[SERVER_ADDR]=>{省略}
[SERVER_PORT] => 80
[REMOTE_ADDR]=>{省略}
[DOCUMENT_ROOT]=>{省略}
[SERVER_ADMIN]=>[アドレスが指定されていません]
[SCRIPT_FILENAME] => /404.php
[REMOTE_PORT] => 19274
[GATEWAY_INTERFACE] => CGI / 1.1
[SERVER_PROTOCOL] => HTTP / 1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /404.php
[SCRIPT_NAME] => /404.php
[PHP_SELF] => /404.php
[REQUEST_TIME]=>{省略}

助言がありますか?私が読んだものはすべてHTTP_REFERERアイテムを推奨していますが、存在しないようです。

前もって感謝します。

4

1 に答える 1

4

REQUEST_URIは、要求された URL パスとクエリを含むことを意図しています。

于 2010-02-01T18:32:40.013 に答える