как изменить этот код, чтобы включить запись IP-адреса в другой файл - PullRequest
1 голос
/ 22 октября 2009

пожалуйста, посмотрите на простой код веб-страницы php ниже

как изменить мой код так, чтобы на моем сервере создавался файл журнала, который регистрирует ip каждого посетителя и был ли он успешно перенаправлен на правильную страницу. что-то вроде того.

   <?php

$a = $_SERVER['REMOTE_ADDR'];
if ( $a == "117.96.112.122" )
{
        header("Location: ad_sams_mobile.html");
        return true;
}
else
{
        header("Location: ad_other_mobile.html");
        return true;
}

?>

Ответы [ 4 ]

2 голосов
/ 22 октября 2009

См. Функцию PHP file_put_contents . Вам нужно будет использовать флаг добавления:

file_put_contents("log.txt", "IP: ". $a .", Location: ad_other_mobile.html", FILE_APPEND);
1 голос
/ 22 октября 2009

Apache access.log должен содержать всю необходимую информацию.

Все, что вам нужно сделать, это разобрать его.

0 голосов
/ 23 октября 2009

Или это для регистрации IP:

<?php
$file = fopen("log.html", "a");

$time = date("H:i dS F");
fwrite($file, "<b>Time:</b> $time<br/>" );

if( $REMOTE_ADDR != null)
{
fwrite($file,"<b>IP address:</b> $REMOTE_ADDR<br/>");
}

if( $HTTP_REFERER != null)
{
fwrite($file,"<b>Referer:</b> $HTTP_REFERER<br/>");
}

fwrite($file,"<b>Browser:</b> $HTTP_USER_AGENT<hr/>");

fclose($file)

?> 
0 голосов
/ 22 октября 2009

Примерно так:

$logfile = 'redirect.log';
$handle = @fopen($logfile, "a");

$a = $_SERVER['REMOTE_ADDR'];

if ( $a == "117.96.112.122" )
{
    $redirect_loc = 'ad_sams_mobile.html';
    header("Location: {$redirect_loc}");
 }
else
{
    $redirect_loc = 'ad_other_mobile.html';
    header("Location: {$redirect_loc}");
}

if ($handle && is_writable($logfile))
{
    $log = "{$a} -> {$redirect_loc}\n";
    fwrite($handle, $log);
    fclose($handle);
}
return true; // you always return true so just put it at the end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...