![]() |
Есть 3 значения с ip: $_SERVER['HTTP_CLIENT_IP'], $_SERVER['HTTP_X_FORWARDED_FOR'], $_SERVER['REMOTE_ADDR'].
Хотел бы узнать что лучше использовать для идентификации пользователя? Правильность получение ip мне не важна, главное чтобы он у всех был разный и не менялся со временем. Также есть ли смысл юзать такой код? PHP: Код:
|
Правильным решением будет $_SERVER['REMOTE_ADDR'] (потому что остальные заголовки можно подменить вручную), а меняться он так и так может, если у человека динамический ip.
|
Цитата:
|
Цитата:
Человек выше абсолютно прав -- все остальные заголовки, кроме REMOTE_ADDR можно спокойно подменить. Код, который выложил автор - пабликовый, им пользуются миллионы новичков, но так и не понимают, что это бесполезно. Более того, в PHP категорически нельзя юзать игнорирование ошибок ( Код:
@Чтобы увидеть пруфы слов выше, достаточно перейти в Код:
/etc/nginx/fastcgi.confТам будет такая строка: NGINX: Код:
fastcgi_paramКод:
fastcgi_paramКод:
REMOTE_ADDRКод:
$remote_addrКод:
$remote_addrКод:
fastcgi.confВот. На счет апача - не думаю, что его кто-то юзает. Если хостинг - вся та же самая картина, хостинг не будет менять дефолтный Код:
REMOTE_ADDRКод:
X_REAL_REALNO_REALNIY_IP_CLIENTA_TRUE_PRAVDAВот. |
Цитата:
|
Цитата:
|
Цитата:
|
Добавлю к текущим ответам. Сам для получения IP адреса пользователя использую - $_SERVER['REMOTE_ADDR'] .
Однако, возможно ты столкнешься с работой с Cloudflare, на этот случай используй - $_SERVER["HTTP_CF_CONNECTING_IP"] . |
| Время: 06:57 |