php 获取访客来路 并保存到txt文件

180it 2025-11-09 PM 8℃ 0条
<?php
function getRefererUrl(): ?string {
    if (empty($_SERVER['HTTP_REFERER'])) return null;
    $url = trim($_SERVER['HTTP_REFERER']);
    // 验证 URL 格式
    if (!filter_var($url, FILTER_VALIDATE_URL)) return null;
    return $url;
}

// 用法
$referer = getRefererUrl();
$savePath = __DIR__ . DIRECTORY_SEPARATOR . '123.txt'; // 脚本目录下的 123.txt

if ($referer !== null) {
    echo "来路 URL: $referer\n";

    // 可选:取 host 并简单判断是否属于某个域
    $host = parse_url($referer, PHP_URL_HOST);
    echo "来路域名: $host\n";

    // 准备要写入的内容(带时间戳)
    $line = date('Y-m-d H:i:s') . " " . $referer . PHP_EOL;

    // 追加写入并加锁,防止并发写入冲突
    $res = @file_put_contents($savePath, $line, FILE_APPEND | LOCK_EX);

    if ($res === false) {
        // 写入失败,记录到 error_log(或按需处理)
        error_log("Failed to write referer to $savePath");
        echo "保存失败,请检查文件权限。\n";
    } else {
        echo "已保存到 123.txt\n";
    }
} else {
    echo "无有效来路 URL\n";
}
支付宝打赏支付宝打赏 微信打赏微信打赏

如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!

标签: none

php 获取访客来路 并保存到txt文件