Всем привет, многие знают такое понятие, как логгер ( если нет, то ниже есть определение ) , но многие такие сайты платные и , что бы узнать информацию про человека вам приходится платить деньги, либо сидеть, стиснув зубы.
Сегодня мы с Вами напишем САМЫЙ ПРОСТОЙ логгер, который может быть. Он будет возвращать данные от сервера, т.е. ip , устройство, с которого сидит пользователь. Для этого нам понадобится бесплатный хостинг ( я буду использовать 000webhost ). И так, приступим.
Для начала создадим файл index.php и напишем стандартную разметку страницы, выглядит она вот так:
И так, приступим к основной части, напишем скрипт на php, который будет выводить всю информацию от сервера.
Первым делом откроем тег php
Создадим цикл foreach, но перед этим объявим переменную data, в которой у нас будут содержаться все данные от сервера.
Теперь приступим к циклу.
Для тех, кому непонятно , он выводит в переменную $data все данные от сервера с новой строки.
Я хочу, что бы данные заносились в текстовый файл, именем которого будет ip и дата ( число, год, время). Для этого сначала создадим две переменные.
Создаём новую переменную и используем функцию fopen, дабы задать расположение и имя нашего файла ( все текстовые файлы я буду хранить в папке log )
Далее задаём значение нашего файла, то есть то, что в нём будет.
И нам осталось только закрыть этот самый файл, что бы не возникло никаких проблем.
Весь код должен выглядеть примерно так:
Конечно, это самый слабый логгер, но всё же уже неплохо. Теперь, что бы никто не заподозрил, что это логгер, создадим новую страницу, в которой будет сообщаться, что сайт временно не работает, а скрипт на js будет переправлять пользователя с основной страницы на страницу с ошибкой .
Так, ну, с созданием страницы с ошибкой всё просто, я даже не стал заморачиваться и сделал вот это(страницу я поместил в отдельную папку 'error'):
А так же в главной странице создадим скрипт, который через 2 секунды будет нас перенаправлять на страницу с ошибкой:
Ну вот вроде и всё! Остаётся только залить все файлы на хостинг и не забыть создать папку log! Этот скрипт для новичков, так что не судите строго) Скоро, думаю выйдет статья по F# и C#, Ждёте?
P.S. Если остались вопросы или ошибки, то пишите в комментарии или мне в личные сообщения. Всех благ .
Код:
Логгер - программа, предназначенная для вычисления данных о пользователе, который заходит на Ваш сайт.
Для начала создадим файл index.php и напишем стандартную разметку страницы, выглядит она вот так:
Код:
<!DOCTYPE html>
<html>
<head>
<meta charset="URF-8"/>
<title>My photoes</title>
</head>
<body>
</body>
<html></html
Первым делом откроем тег php
Код:
<?php ?>
Код:
$data = "/n/n";
Код:
foreach ($_SERVER as $key => $val) {
$data .= "{$key}: {$val}\n";
}
Я хочу, что бы данные заносились в текстовый файл, именем которого будет ip и дата ( число, год, время). Для этого сначала создадим две переменные.
Код:
$datenow = date("l dS of F Y h:i:s A"); // Получаем дату
$ipadress = $_SERVER['REMOTE_ADDR']; // Получаем ip пользователя.
Код:
$fp = fopen("log/$ipadress || $datenow.txt", "w");
Код:
fwrite($fp, $text);
Код:
fclose($fp);
Код:
<?php
$data = "\n\n";
foreach ($_SERVER as $key => $val) {
$data .= "{$key}: {$val}\n";
}
$ipadress = $_SERVER['REMOTE_ADDR'];
$datenow = date("l dS of F Y h:i:s A");
$text = "$data";
$fp = fopen("log/$ipadress || $datenow.txt", "w");
fwrite($fp, $text);
fclose($fp);
?>
Так, ну, с созданием страницы с ошибкой всё просто, я даже не стал заморачиваться и сделал вот это(страницу я поместил в отдельную папку 'error'):
Код:
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<title>Опаньки..</title>
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<div><h1>Извините, но в данное время сайт не работает.</h1>
<p>Проверьте своё подключение к интернету.</p></div>
</body>
</html>
CSS:
h1, p {
display:flex;
align-items:center;
justify-content:center;
}
p {
color:blue;
}
div {
padding-top:45vh;
}
Код:
<script>
function replace() {
document.location.replace("error/index.html"); } // меняем локацию документа
setTimeout(replace, 2000); // через 2 секунды запускается функция replace.
</script>
P.S. Если остались вопросы или ошибки, то пишите в комментарии или мне в личные сообщения. Всех благ .