放在index.php里
// 自定义日志函数
function logAccessDetails() {
$logData = [
'timestamp' => date('Y-m-d H:i:s'),
'url' => $_SERVER['REQUEST_URI'] ?? '',
'method' => $_SERVER['REQUEST_METHOD'] ?? '',
'ip' => $_SERVER['REMOTE_ADDR'] ?? '',
'user_agent' => $_SERVER['HTTP_USER_AGENT'] ?? '',
'headers' => getallheaders(),
'referer' => $_SERVER['HTTP_REFERER'] ?? '',
'is_bot' => preg_match('/bot|crawl|slurp|spider|google|yandex|bing|duckduck|teoma|baidu/i', $_SERVER['HTTP_USER_AGENT'] ?? '') ? 1 : 0
];
$logMessage = json_encode($logData, JSON_PRETTY_PRINT) . PHP_EOL;
// 日志文件路径 - 请确保目录可写
$logFile = dirname(__FILE__) . '/access_logs/' . date('Y-m-d') . '.log';
// 如果目录不存在则创建
if (!is_dir(dirname($logFile))) {
mkdir(dirname($logFile), 0755, true);
}
file_put_contents($logFile, $logMessage, FILE_APPEND | LOCK_EX);
}
// 记录访问信息
logAccessDetails();