Likes Likes:  0
Resultaten 1 tot 5 van de 5
Geen

Onderwerp: php fsockopen

  1. #1
    php fsockopen
    Hostingontwikkelaar
    2.882 Berichten
    Ingeschreven
    03/07/04

    Locatie
    Maastricht

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    9 Berichten zijn liked


    Naam: Tim
    Registrar SIDN: Ja
    KvK nummer: 59418095
    Ondernemingsnummer: nvt

    Thread Starter

    php fsockopen

    Onderstaande code wilt helaas al anderhalf uur niet werken. $parts is een array bestaande uit [0] = www.eenbestaandedomeinnaam.nl en [1] = index.html . De array heb ik al hardcoded gedaan, en ook de $parts al eens verwijderd en hardcoded.

    Code:
    <?php			$sock = fsockopen($parts[0], "80", $errno, $errstr, 30);
    			if($sock)
    			{
    				fwrite($sock, "HEAD /".$parts[1]." HTTP/1.0\r\n");
    				fwrite($sock, "Connection: close\r\n\r\n");
    				while(!feof($sock))
    				{
    					$headers .= fgets($sock);
    				}
    				echo $headers;
    				
    			}
    ?>
    Als ik http 1.0 gebruik krijg ik constant deze melding, hoe ik het ook schrijf of aanpas:

    Code:
    HTTP/1.1 302 Found
    Date: Tue, 01 May 2007 19:50:51 GMT
    Server: Apache
    Location: http:///
    Connection: close
    Content-Type: text/html; charset=iso-8859-1
    met http 1.1 krijg ik constant deze melding:
    Code:
    HTTP/1.1 400 Bad Request
    Date: Tue, 01 May 2007 19:54:00 GMT
    Server: Apache
    Connection: close
    Transfer-Encoding: chunked
    Content-Type: text/html; charset=iso-8859-1
    Wat ik wil is gewoon met PHP4 de header uitlezen, zodat ik kan controleren op Content-Type. Iemand voor mij de oplossing of een schop in de richting?

    Ik ben er al achter dat het iets met Apache's VirtualHosts te maken heeft..
    Laatst gewijzigd door WH-Tim; 01/05/07 om 21:58. Reden: Automerged Dubbelpost

  2. #2
    php fsockopen
    addicted!
    1.457 Berichten
    Ingeschreven
    13/09/03

    Locatie
    Tilburg / KVK Midden Brabant

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    6 Berichten zijn liked


    Naam: M. Groenleer
    Registrar SIDN: JA

    Het lijkt er op dat je het HOST: deel mist.

    Hoewel je wel een connectie opbouwt naar een host $part[0] vertel je nergens in je HTTP request voor welke web-host het bestemd is.

    Deze hoort onder je HEAD/GET/POST/REQUEST statement te komen.
    Zie ook een dump uit mijn WireShark.

    Een goede RFC is 2616 (DIe over het HTTP protocol)
    http://www.w3.org/Protocols/rfc2616/rfc2616.html


    Een andere leuke en goede bron is:
    http://djce.org.uk/dumprequest.html
    Het kijkt naar jouw request voor die specifieke pagina en ontrafelt dan de http request die is opgesteld.
    Bijgevoegde Thumbnails Bijgevoegde Thumbnails php fsockopen-rfc2616-jpg  
    Laatst gewijzigd door groenleer; 02/05/07 om 08:41.

  3. #3
    php fsockopen
    Hostingontwikkelaar
    2.882 Berichten
    Ingeschreven
    03/07/04

    Locatie
    Maastricht

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    9 Berichten zijn liked


    Naam: Tim
    Registrar SIDN: Ja
    KvK nummer: 59418095
    Ondernemingsnummer: nvt

    Thread Starter
    Bedankt groenleer, dit is precies wat ik vanmorgen liggend in mijn bedje aan het bedenken was Het host gedeelte toevoegen en een packetsniffer gebruiken voor nu en in de toekomst!

  4. #4
    php fsockopen
    Hostingontwikkelaar
    2.882 Berichten
    Ingeschreven
    03/07/04

    Locatie
    Maastricht

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    9 Berichten zijn liked


    Naam: Tim
    Registrar SIDN: Ja
    KvK nummer: 59418095
    Ondernemingsnummer: nvt

    Thread Starter
    Ha, ik heb vandaag nogmaals zelf de packetsniffer gebruikt om headers uit te vogelen, maar zit nu wel met een vraag.
    Op http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html sectie '14.10 Connection' en http://www.w3.org/Protocols/rfc2616/...html#sec19.6.2 staat een beschrijving over HTTP/1.0 en HTTP/1.1 :

    A system receiving an HTTP/1.0 (or lower-version) message that includes a Connection header MUST, for each connection-token in this field, remove and ignore any header field(s) from the message with the same name as the connection-token. This protects against mistaken forwarding of such header fields by pre-HTTP/1.1 proxies. See section 19.6.2.
    Kan ik hieruit concluderen dat HTTP/1.0 standaard altijd de verbinding afsluit na een request en de 'Connection: close' header eigenlijk onnodig is?

    Wat is het duidelijke verschil tussen HTTP/1.0 en HTTP/1.1?

  5. #5
    php fsockopen
    addicted!
    1.457 Berichten
    Ingeschreven
    13/09/03

    Locatie
    Tilburg / KVK Midden Brabant

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    6 Berichten zijn liked


    Naam: M. Groenleer
    Registrar SIDN: JA

    Citaat Oorspronkelijk geplaatst door WH-Tim Bekijk Berichten
    Kan ik hieruit concluderen dat HTTP/1.0 standaard altijd de verbinding afsluit na een request en de 'Connection: close' header eigenlijk onnodig is?
    Ik denk het ook, zoals ik de RFC lees.
    QUOTE=RFC 2616 #19.6.2]
    Persistent connections in HTTP/1.0 are explicitly negotiated as they are not the default behavior.
    [/quote]

    Citaat Oorspronkelijk geplaatst door WH-Tim Bekijk Berichten
    Wat is het duidelijke verschil tussen HTTP/1.0 en HTTP/1.1?
    Echte duidelijke verschillen durf ik niet aan te geven.
    Ik weet dat het o.a. met het aantal en het soort headers te maken heeft.

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics