|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Vitaly Tkachenko 2:5020/400 03 Aug 2001 08:56:45 To : Sergey Sokolov Subject : Re: IP и поpт бpоyзеpа -------------------------------------------------------------------------------- Hello, Sergey! You wrote to All on Wed, 01 Aug 2001 19:23:23 +0400: SS> Hello, All! SS> Как мой скpипт может yзнать IP и поpт того, кто сделал запpос? SS> Есть ли еще какая инфоpмация, котоpая может идентифициpовать SS> запpос? Как IP - элементарно. См. ENV - переменные среды окружения, их формирует прога-сервер для CGI приложения (см. дальше пример) А порт имеет только сервер, на который сокет подключается ;) У клиента такого понятия нет... т.е. понятие о порте есть, но порта нет ;))) SS> Thank you, All for your net activity !! ... E-mail: fal_pri@mail.ru SS> | WWW: SS> ssokolov.boom.ru / VirtualVAT / Пример: ===================================== #!/usr/bin/perl $argv = $ENV{'QUERY_STRING'}; print "Content-Type: text/html\n\n"; print "<html><body>"; if( $argv ) { if( $argv =~ /&/ ) { open( WR, "vars.out" ); if( $argv eq "\&" ) { foreach (<WR>) { if( /^-+>(.*)$/ ) { print "<a href=vars.cgi?\&$1>$1</a><br>"; } } close( WR ); print "</body></html>"; exit( 0 ); } else { $rec = ($argv =~ /&(.*)/)[0]; $y = 0; foreach (<WR>) { if( $rec eq (/^-+>(.*)$/)[0] ) { $y = 1; } elsif( $y ) { if( /^=+$/ ) { print "<div align=right><a href=vars.cgi?&>another record</a></div></body></html>"; close( WR ); exit( 0 ); } else { print "$_<br>"; } } } } } else { open( WR, ">>vars.out" ); print WR "----->$argv\n"; } } foreach ( keys %ENV ) { $_ .= " = $ENV{$_}"; print "$_<br>"; if( $argv ) { print WR "$_\n"; } } print "</body></html>"; if( $argv ) { print WR "=" x 30 . "\n\n"; close( WR ); } --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/5167248db31.html, оценка из 5, голосов 10
|