CGI :: remote_addr - Улучшенная версия CGI.PM "remote_addr ()"
use CGI;
use CGI::remote_addr;
my $cgi = CGI -> new();
my $addr = $cgi -> remote_addr(); CGI::remote_addr реализует расширенную версию метода remote_addr() , предоставленную CGI.pm , которая пытается вернуть исходный IP -адрес, от которого возникло соединение (который не обязательно является IP -адресом, от которого мы получили соединение).
Просто загрузка CGI::remote_addr заставляет его переоценить существующий метод remote_addr() . Обратите внимание, однако, что это глобальный переучредитель; Если вы работаете в рамках MOD_PERL, вы только что переоценили его для всех ваших приложений.
$ENV{REMOTE_ADDR} , чтобы найти IP -адрес, но и ищем $ENV{HTTP_X_FORWARDED_FOR} чтобы найти IP -адрес. Если $ENV{HTTP_X_FORWARDED_FOR} определено, мы сначала попробуем это.$ENV{REMOTE_ADDR} или $ENV{HTTP_X_FORWARDED_FOR} . Я видел много случаев, когда значения для $ENV{HTTP_X_FORWARDED_FOR} были набиты мусором, и мы следим за тем, чтобы вы получили только настоящий IP.undef , а не 127.0.0.1 (например, CGI.pm ).remote_addr ()
Возвращает IP -адрес (ES) удаленного хоста.
Грэм Термарш ([email protected])
Copyright (C) 2008 Graham Termarsch. Все права защищены.
Эта библиотека - свободное программное обеспечение; Вы можете перераспределить его и/или изменить его в соответствии с теми же условиями, что и сам Perl.