PHP: разрешить только два IP-адреса одновременно - PullRequest
0 голосов
/ 11 мая 2010

Я хочу, чтобы к моему веб-сайту обращались только с двух IP-адресов. когда к сайту обращаются более двух IP-адресов, возникает ошибка. Может ли любое тело сделать это в PHP, пожалуйста, помогите мне

спасибо

Ответы [ 5 ]

3 голосов
/ 11 мая 2010

Если вы хотите ограничить всех посетителей определенными IP-адресами, самый простой / быстрый способ будет сделать это на вашем веб-сервере, например, с Apache .htaccess вместо того, чтобы делать это в PHP:

Order Deny,Allow
Deny From All
Allow From 1.2.3.4
Allow From 5.6.7.8
3 голосов
/ 11 мая 2010

Попробуйте

if($_SERVER['REMOTE_ADDR'] != '212.100.232.111' && $_SERVER['REMOTE_ADDR'] != '212.100.232.112'){
 die('No access');
}
1 голос
/ 11 мая 2010

Чтобы ограничить количество одновременных пользователей, вам нужны какие-то сеансы, хранящиеся в базе данных. Затем, когда в систему входит новый пользователь, проверьте, существует ли уже два сеанса с разных ips, и в этом случае выведите ошибку.

Обратите внимание, что вы ДОЛЖНЫ сделать так, чтобы сеансы быстро истекали, если кто-то неактивен, поэтому он не запрещает другим входить в систему только потому, что он не вышел из системы.

1 голос
/ 11 мая 2010

Вам необходимо использовать суперглобальную переменную $_SERVER['REMOTE_ADDR']: она должна дать вам IP-адрес, с которого исходил запрос клиента. Просто проверьте, разрешено ли это, и покажите сообщение об ошибке, если нет.

1 голос
/ 11 мая 2010

Используйте $_SERVER['REMOTE_ADDR'], чтобы получить адрес входящего соединения, и проверьте его, чтобы выполнить соответствующее перенаправление или что у вас.

...