Výsledky 1 až 4 z 4

Téma: [PHP] funkce headers_list

  1. #1

    Standardní [PHP] funkce headers_list

    Zdravím, už tak půl roku píšu webíky v PHP a všiml jsem si že na nějakerých serverech se zobrazuje IP i za proxi. Tak mě napadá že proxi mého ISP asi posílá hlavíšku na web něco jako : X-real-IP:XXX.XXX.XXX.XXX. Tak jsem si žíkal, že bych toho taky na svých webech mohl využít, ale když jsem skoušel fnci headers_list podle tohoto příkladu :
    http://cz2.php.net/manual/cs/function.headers-list.php tak mi to "úspěšně" hodilo :
    array(0) {
    }.
    M2l jsem to na PHP 5.0.3RC1 takže myslím že nebude problém v tom že by tento cmd byl jen pro vyžší verzi PHP. A ani jsem se nedočetl na tom webu že by musela být povoleny nějaké speciální extension. V čem je problém?
    Desktop: MB MSI 865PE Neo | CPU P4 2.4 GHz | RAM 512MB DDR | HDD Seagate 120 GB, 7200 rpm, 8 MB | VGA Ati Radeon 9500 128MB(Unlock) | DVD Teac 16x / 40x | SOUND on MB | MIDLE TOWER, 300W | 17\" AOC | MX 518 ||| Notebook

  2. #2

    Standardní

    ony se delaj ruzny "zaruceny" funkce na zjisteni skutecne IP adresy, ale kdo tomu trochu rozumi, muze to oblbnout. jedna z takovejch "kvalitnejsich" funkci je treba
    Kód:
    function get_ip() {
       if (isSet($_SERVER)) {
           if (isSet($_SERVER["HTTP_X_FORWARDED_FOR"])) {
               $realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
           } elseif (isSet($_SERVER["HTTP_CLIENT_IP"])) {
                   $realip = $_SERVER["HTTP_CLIENT_IP"];
               } else {
                   $realip = $_SERVER["REMOTE_ADDR"];
               }
           } else {
               if ( getenv( 'HTTP_X_FORWARDED_FOR' ) ) {
                   $realip = getenv( 'HTTP_X_FORWARDED_FOR' );
               } elseif ( getenv( 'HTTP_CLIENT_IP' ) ) {
                   $realip = getenv( 'HTTP_CLIENT_IP' );
               } else {
                   $realip = getenv( 'REMOTE_ADDR' );
           }
       }
       return $realip;
    }
    i kdyz je za proxy, posila v hlavicce HTTP_X_FORWARDED_FOR svoji IP a v REMOTE_ADDR posila IP proxy. vsechno ziskas v asociativnim poli $_SERVER (vetsinou )
    1) ASUS M6A
    2) Toshiba Portége R600-10U
    3) ASUS A8V-X AMD Athlon 64 3000+ Kingmax 2x256MB DDR 400 WD 120GB Samsung 80 GB GMC G30 Fortron FSP400-60THN-P
    Ideální indentace pro Pascal je šest stop pod zem.

  3. #3

    Standardní

    headers_list ti ukazuje hlavicku ktera se posle klientovi, ne hlavicku ktera prisla od klienta.
    u HTTP_X_FORWARDED_FOR je drobnej problem v tom ze kdyz je nekdo trosku sikovnej tak si v browseru muze dodefinovat ze bude posilat treba
    Kód:
    X-Forwarded-For: 195.219.49.215
    a to se pak budes divit ze ti tam leze bilej dum
    takze pokud chces studovat i kdo je za proxy tak vzdycky ukladej obe adresy ... jinak hlavne REMOTE_ADDR ... ta se neda spoofnout (nebo aspon ne tak snadno)
    Hrrrr, will you stop using people as human driven search engines? Google.com has all the answers you need.

  4. #4

    Standardní

    jj, už se mi pod prsty taky dostal squind pro win, co uměl svoji IP zaměnit ....
    Desktop: MB MSI 865PE Neo | CPU P4 2.4 GHz | RAM 512MB DDR | HDD Seagate 120 GB, 7200 rpm, 8 MB | VGA Ati Radeon 9500 128MB(Unlock) | DVD Teac 16x / 40x | SOUND on MB | MIDLE TOWER, 300W | 17\" AOC | MX 518 ||| Notebook

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •