Сокеты and max_execution_error

Discussion in 'PHP' started by Велемир, 2 Feb 2009.

  1. Велемир

    Joined:
    19 Jun 2006
    Messages:
    1,123
    Likes Received:
    96
    Reputations:
    -25
    <?php

    $host = "www.softtime.ru";
    $port = "80";
    $sock = fsockopen($host,$port,$errno);
    $path = "admin";
    $ua = "fuck";

    $req = "HEAD /$path HTTP/1.1\r\n";
    $req .= "Accept: */*\r\n";
    $req .= "Accept-Language: uk\r\n";
    $req .= "User-Agent: $ua\r\n";
    $req .= "Host: $host\r\n";
    $req .= "Connection: Close\r\n";


    if(!$sock) {

    echo $errno($errstr);

    }

    fputs($sock,$req);

    while(!feof($sock)) {

    $x .= fgets($sock,128);

    }


    echo $x;

    fclose($sock);

    ?>

    Где ошибко?(((
     
  2. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Для конкретного примера должно быть:

    $req .= "Connection: Close\r\n\r\n";
     
  3. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    и поставь set_time_limit(0); в начале
     
  4. Велемир

    Joined:
    19 Jun 2006
    Messages:
    1,123
    Likes Received:
    96
    Reputations:
    -25
    А почему не \r\n ?
     
  5. oRb

    oRb Elder - Старейшина

    Joined:
    9 May 2008
    Messages:
    294
    Likes Received:
    581
    Reputations:
    256
    Потому что
    (с) http://ru.wikipedia.org/wiki/Http
     
  6. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Велемир:

    PHP:
    generic-message start-line
                      
    *message-header
                      CRLF
                      
    message-body ]

    start-line      Request-Line Status-Line
    http://lib.ru/WEBMASTER/rfc2068/rfc2068rus.txt

    Хидеры от тела отделяются пустой строкой \r\n даже при отсутствии (то есть при пустом) тела сообщения.
     
    1 person likes this.
  7. PaCo

    PaCo Elder - Старейшина

    Joined:
    6 Feb 2008
    Messages:
    436
    Likes Received:
    138
    Reputations:
    25
    Также желательно указать какой запрос
    $req = "HEAD /$path HTTP/1.1\r\n";
    например
    $req = "GET /$path HTTP/1.1\r\n";
     
  8. Велемир

    Joined:
    19 Jun 2006
    Messages:
    1,123
    Likes Received:
    96
    Reputations:
    -25
    Пасиппи вам,люди:)
     
  9. Велемир

    Joined:
    19 Jun 2006
    Messages:
    1,123
    Likes Received:
    96
    Reputations:
    -25
    А заголовок и хост можно тупо послать? без connection-a и т.д,а то я не догоню зачем они ))мб для таймаутов...