Перейти к содержимому


Фотография

Логгирование айпи адресов


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1 666fox666

666fox666

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 905 сообщений

Отправлено 15 Май 2016 - 21:37

Здравствуйте! Есть "сайт" site.ru/index.html. И вот вопрос, можно ли сделать так, чтобы при входе на сайт (Именно на index.html) айпи вошедшего писалось в файл ip.txt, находящийся в корне сайта?
То есть файл ip.txt должен иметь такую структуру:

122.31.68.92
78.2.65.243
И т.д.


Мб это можно силами .htaccess организовать?
Заранее спасибо!

Сообщение отредактировал 666fox666: 15 Май 2016 - 21:40


#2 Kakoin

Kakoin

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 8 969 сообщений

Отправлено 15 Май 2016 - 21:46

AddType application/x-httpd-php .html .htm в .htaccess

<?php
$fp = fopen("ip.txt", "a");
fwrite($fp, $_SERVER['REMOTE_ADDR']);
fclose($fp);
?>

Попробуй так
  • 666fox666 это нравится

#3 666fox666

666fox666

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 905 сообщений

Отправлено 15 Май 2016 - 22:16

AddType application/x-httpd-php .html .htm в .htaccess

<?php
$fp = fopen("ip.txt", "a");
fwrite($fp, $_SERVER['REMOTE_ADDR']);
fclose($fp);
?>

Попробуй так

В .htaccess строку добавил. В index.html вставил php код (Внутри тега body) - не работает

#4 Kakoin

Kakoin

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 8 969 сообщений

Отправлено 15 Май 2016 - 22:21

В .htaccess строку добавил. В index.html вставил php код (Внутри тега body) - не работает


У меня работает. Только вот я не могу понять как сделать перенос на новую строку.

#5 ykpon

ykpon

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 4 027 сообщений

Отправлено 15 Май 2016 - 22:28

<?php
file_put_contents('ip.txt', $_SERVER['REMOTE_ADDR'] . PHP_EOL, FILE_APPEND);

У себя бы я сделал с функцией, которой определяю IP в своих проектах уже давно:

<?php
function getUserIP()
{
	$client = @$_SERVER['HTTP_CLIENT_IP'];
	$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
	$remote = $_SERVER['REMOTE_ADDR'];
	if (filter_var($client, FILTER_VALIDATE_IP)) {
		$ip = $client;
	}
	elseif (filter_var($forward, FILTER_VALIDATE_IP)) {
		$ip = $forward;
	}
	else {
		$ip = $remote;
	}

	return $ip;
}

file_put_contents('ip.txt', getUserIP() . PHP_EOL, FILE_APPEND);

  • deadanykey и 666fox666 это нравится

#6 666fox666

666fox666

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 905 сообщений

Отправлено 15 Май 2016 - 22:55

<?php
file_put_contents('ip.txt', $_SERVER['REMOTE_ADDR'] . PHP_EOL, FILE_APPEND);
У себя бы я сделал с функцией, которой определяю IP в своих проектах уже давно:
<?php
function getUserIP()
{
	$client = @$_SERVER['HTTP_CLIENT_IP'];
	$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
	$remote = $_SERVER['REMOTE_ADDR'];
	if (filter_var($client, FILTER_VALIDATE_IP)) {
		$ip = $client;
	}
	elseif (filter_var($forward, FILTER_VALIDATE_IP)) {
		$ip = $forward;
	}
	else {
		$ip = $remote;
	}

	return $ip;
}

file_put_contents('ip.txt', getUserIP() . PHP_EOL, FILE_APPEND);
Ваш способ тоже не работает, ip.txt - пустой. Полагаю, что делаю что-то не то

Вот содержимое .htaccess
AddType application/x-httpd-php .html .htm
Вот содержимое index.html
<!DOCTYPE html>
<html lang="en">
   <head>
      <title>HTML</title>
   </head>
   <body>
<?php
function getUserIP()
{
	$client = @$_SERVER['HTTP_CLIENT_IP'];
	$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
	$remote = $_SERVER['REMOTE_ADDR'];
	if (filter_var($client, FILTER_VALIDATE_IP)) {
		$ip = $client;
	}
	elseif (filter_var($forward, FILTER_VALIDATE_IP)) {
		$ip = $forward;
	}
	else {
		$ip = $remote;
	}

	return $ip;
}

file_put_contents('ip.txt', getUserIP() . PHP_EOL, FILE_APPEND);
?>
<h1>Страница html, при входе на неё ip адрес автоматически записывается в ip.txt</h1>
</body>
</html>


#7 ykpon

ykpon

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 4 027 сообщений

Отправлено 15 Май 2016 - 23:09

В index.html выводится текст из <?php ?> тегов?


Убедись, что ip.txt имеет права на запись.



#8 666fox666

666fox666

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 905 сообщений

Отправлено 15 Май 2016 - 23:34

В index.html выводится текст из <?php ?> тегов?

Убедись, что ip.txt имеет права на запись.

Всё выводится. Проблема была в правах файлов. Спасибо большое)


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных