Блокировка по IP адресу в php

Это маленькая статья о том как можно заблокировать доступ к сайту по IP-адресу.
Ни чего сложного тут нет, поэтому приведу просто код с комментариями.
Единственное, хочу сказать, что такой способ не стоит считать панацеей от надоедливых пользователей, поскольку IPадрес очень легко сменить воспользовавшись специальной программой. А также многие интернет-провайдеры выдают пользователю динамический IP, то есть при каждом переподключении к интернету у владельца меняется IP-адрес.

<?php
	$ipUser = $_SERVER['REMOTE_ADDR']; // Получаем IP пользователя
	// массив заблокированных IP
	// можно сделать получение из бд
	$arrayBanIP = array(
		'127.0.0.1',
		'127.0.0.2',
		'127.0.0.3'
	);
	// проверяем наличие IP пользователя в списке заблокированнный
	if(in_array($ipUser, $arrayBanIP)){
		// если заблокирован, то останавливаем скрипт и выводим сообщение
		die('The Matrix has you...');
	}
	// тут любой код, доступ к которому имеют все НЕ заблокированные
?>
Рассказать друзьям:


Оценить:
(5 оценок, среднее: 4,80 из 5)

Блокировка по IP адресу в php: 7 комментариев

  1. А как заблокировать по части адреса, например лезет бот с адресов: 31.184.238.x, x — разные значения, а первая часть совпадает.

    1. Можно разбить IP на элементы массива, примерно вот так:
      $ip_array = explode(".", $ip);
      И сравнивать уже не весь ip, а только первые три числа

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

code