Likes Likes:  0
Resultaten 1 tot 10 van de 10
Geen
  1. #1
    Nico Schuyt
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    301-redirect syntaxis

    Volgens http://nl2.php.net/manual/en/function.header.php zou dat kunnen met
    $toLocation="http://".$_SERVER['HTTP_HOST']."/404.php";
    header ('HTTP/1.1 301 Moved Permanently');
    header ('Location: '.$toLocation);

    Ik kreeg laatst van iemand het advies om het in één regel te doen:
    header("Location: ".$toLocation,true,301);

    Kan iemand bevestigen dat dat een correcte redirect is?


    --
    Nico Schuyt
    http://www.nicoschuyt.nl/



  2. #2
    Rene Pijlman
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    Nico Schuyt:
    >Ik kreeg laatst van iemand het advies om het in één regel te doen:
    > header("Location: ".$toLocation,true,301);
    >
    >Kan iemand bevestigen dat dat een correcte redirect is?


    In PHP 4.3.0 en hoger, ja.
    http://nl2.php.net/manual/en/function.header.php

    --
    René Pijlman

    Wat wil jij worden? http://www.carrieretijger.nl

  3. #3
    Nico Schuyt
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    Rene Pijlman wrote:
    > Nico Schuyt:
    >> Ik kreeg laatst van iemand het advies om het in één regel te doen:
    >> header("Location: ".$toLocation,true,301);
    >> Kan iemand bevestigen dat dat een correcte redirect is?


    > In PHP 4.3.0 en hoger, ja.
    > http://nl2.php.net/manual/en/function.header.php


    Ah, dat had ik over het hoofd gezien. Bedankt!

    Soms verwarrend die headers:

    Met:
    $toLocation="http://".$_SERVER['HTTP_HOST']."/404.php";
    header("HTTP/1.0 404 Not Found");
    header("Location: ".$toLocation);
    zou ik verwachten dat de server een 404 status krijgt.
    De log levert echter op:
    127.0.0.1 - - [07/Dec/2005:11:43:26 +0100] "GET /xxxxx.php HTTP/1.1"
    302 - ....

    Nico Schuyt
    http://www.nicoschuyt.nl/



  4. #4
    Warden Dave
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    "Nico Schuyt" <nschuyt@hotmail.com> wrote:
    > Rene Pijlman wrote:


    >> In PHP 4.3.0 en hoger, ja.
    >> http://nl2.php.net/manual/en/function.header.php

    >
    > Ah, dat had ik over het hoofd gezien. Bedankt!
    >
    > Soms verwarrend die headers:
    >
    > Met:
    > $toLocation="http://".$_SERVER['HTTP_HOST']."/404.php";
    > header("HTTP/1.0 404 Not Found");
    > header("Location: ".$toLocation);
    > zou ik verwachten dat de server een 404 status krijgt.
    > De log levert echter op:
    > 127.0.0.1 - - [07/Dec/2005:11:43:26 +0100]
    > "GET /xxxxx.php HTTP/1.1" 302 - ....


    Wellicht wat verwarrend, maar het staat gewoon beschreven in de handleiding:
    "The second special case...". (Je zult wellicht ook een 'Moved Permanently'
    reactie bedoelen en niet die 'Not Found'.)

    groet,
    WD



  5. #5
    Warden Dave
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    "Warden Dave" <warden_dave@mnsys.invalid> wrote:
    > Nico Schuyt:


    >> $toLocation="http://".$_SERVER['HTTP_HOST']."/404.php";


    > (Je zult wellicht ook een 'Moved Permanently' reactie bedoelen en niet die
    > 'Not Found'.)


    Ah, ogenschijnlijk niet (ik was wat snel), maar dan kun je beter de server
    zelve instrueren bij een 404 je '404.php' te gebruiken en kun je het in je
    script bij een 404 reactie laten...

    WD



  6. #6
    Nico Schuyt
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    Warden Dave wrote:
    > "Nico Schuyt" wrote:


    >> Met:
    >> $toLocation="http://".$_SERVER['HTTP_HOST']."/404.php";
    >> header("HTTP/1.0 404 Not Found");
    >> header("Location: ".$toLocation);
    >> zou ik verwachten dat de server een 404 status krijgt.
    >> De log levert echter op:
    >> 127.0.0.1 - - [07/Dec/2005:11:43:26 +0100]
    >> "GET /xxxxx.php HTTP/1.1" 302 - ....


    > Wellicht wat verwarrend, maar het staat gewoon beschreven in de
    > handleiding: "The second special case...".


    Hmmm, het is me nog niet helemaal duidelijk.
    Als ik alleen:
    header("HTTP/1.0 404 Not Found");
    gebruik, levert dat een 404 status op in de log:
    127.0.0.1 - - [07/Dec/2005:12:24:12 +0100] "GET /leverancier.php
    HTTP/1.1" 404 - "....
    In .htaccess heb ik staan:
    ErrorDocument 404 /404.php
    Toch krijg ik *niet* mijn 404.php te zien maar een IE-melding 'page not
    found'
    Een andere niet bestaande pagina als hghghghghg.php levert *wel* de 404.php
    op met in de log:
    127.0.0.1 - - [07/Dec/2005:12:28:25 +0100] "GET /hghghghghg.php HTTP/1.1"
    404

    > (Je zult wellicht ook een
    > 'Moved Permanently' reactie bedoelen en niet die 'Not Found'.)


    Eigenlijk niet. Ik controleer of een pagina een parameter meekrijgt. Als dat
    niet het geval is wil ik 'm naar de 404.php sturen met een 404-status (Lijkt
    me netter voor Google dan een 302). Een 301 durf ik niet goed aan omdat de
    pagina wel degelijk geldig is (mits de parameter is opgegeven).

    (Maar misschien begin ik op dit moment complete wartaal uit te slaan :-)

    --
    Nico Schuyt
    http://www.nicoschuyt.nl/



  7. #7
    Rene Pijlman
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    Nico Schuyt:
    >Toch krijg ik *niet* mijn 404.php te zien maar een IE-melding 'page not
    >found'


    Dat is misschien een IE-anomalie.
    http://www.plinko.net/404/howto.asp?article=3

    Je kunt beter client-side naar de headers kijken, bijvoorbeeld met de Web
    Developer extensions in Firefox. Zowieso mooi spul.

    >Eigenlijk niet. Ik controleer of een pagina een parameter meekrijgt. Als dat
    >niet het geval is wil ik 'm naar de 404.php sturen met een 404-status (Lijkt
    >me netter voor Google dan een 302).


    Dat hangt ervan af. RFC-2616 zegt:

    "302 Found

    The requested resource resides temporarily under a different URI. Since
    the redirection might be altered on occasion, the client SHOULD continue
    to use the Request-URI for future requests."

    "404 Not Found

    The server has not found anything matching the Request-URI. No indication
    is given of whether the condition is temporary or permanent. The 410
    (Gone) status code SHOULD be used if the server knows, through some
    internally configurable mechanism, that an old resource is permanently
    unavailable and has no forwarding address. This status code is commonly
    used when the server does not wish to reveal exactly why the request has
    been refused, or when no other response is applicable."

    Welke is in dit geval van toepassing?

    >Een 301 durf ik niet goed aan omdat de pagina wel degelijk geldig is


    Que? Juist als hij wel degelijk geldig is, maar de URL anders moet zijn,
    komt een 301 meer in aanmerking dan een 404.

    --
    René Pijlman

    Wat wil jij worden? http://www.carrieretijger.nl

  8. #8
    Warden Dave
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    "Nico Schuyt" <nschuyt@hotmail.com> wrote:

    > Hmmm, het is me nog niet helemaal duidelijk.
    > Als ik alleen:
    > header("HTTP/1.0 404 Not Found");
    > gebruik, levert dat een 404 status op in de log:
    > 127.0.0.1 - - [07/Dec/2005:12:24:12 +0100] "GET /leverancier.php
    > HTTP/1.1" 404 - "....
    > In .htaccess heb ik staan:
    > ErrorDocument 404 /404.php
    > Toch krijg ik *niet* mijn 404.php te zien maar een IE-melding
    > 'page not found'


    Als er geen tussenkomst is van de server zelve is zou je 'Errordocument'
    geen effect kunnen hebben. Zie ook de opmerkingen van Rene, die nuttig zijn.
    Als je daar echt aan een uiteindelijke '404 redirect' [...] wilt vasthouden
    kun je 't in je script bij bijv. een 'Moved Permanently' laten en de
    'Location' van een 404 document geven.

    WD



  9. #9
    Rene Pijlman
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    X-Newsreader: Forte Agent 1.93/32.576 English (American)
    MIME-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-1
    Content-Transfer-Encoding: 8bit
    Lines: 28
    NNTP-Posting-Host: 194.109.250.148
    X-Trace: 1133980564 news.xs4all.nl 11063 [::ffff:194.109.250.148]:25689
    X-Complaints-To: abuse@xs4all.nl
    Xref: nl-news.euro.net nl.internet.www.server-side:39949

    Warden Dave:
    >Als er geen tussenkomst is van de server zelve is zou je 'Errordocument'
    >geen effect kunnen hebben.


    Oh ja, natuurlijk, daar dacht ik even niet aan. Een PHP-script die een
    404-status retourneert is iets anders dan Apache die een niet-bestaande
    URL constateert, daardoor zijn geconfigureerde 404-pagina retourneert met
    een 404-status.

    In het eerste geval is het script zelf verantwoordelijk voor de pagina, in
    het tweede geval is Apache dat.

    Als Apache op de aangegeven URL een PHP-script aantreft en activeert (en
    Apache dus geen 404 constateert), en dat script besluit zelf tot een 404,
    dan moet het ook zelf de gewenste inhoud (pagina) meesturen.

    >Als je daar echt aan een uiteindelijke '404 redirect' [...] wilt vasthouden
    >kun je 't in je script bij bijv. een 'Moved Permanently' laten en de
    >'Location' van een 404 document geven.


    Zo kan het ook. Iets minder netjes misschien, omdat je strikt genomen
    browsers verzoekt een (gebookmarkte) URL te veranderen in een onjuiste
    URL. Maar in de praktijk kom je hier vast wel mee weg.

    --
    René Pijlman

    Wat wil jij worden? http://www.carrieretijger.nl

  10. #10
    Warden Dave
    301-redirect syntaxis
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: 301-redirect syntaxis

    "Rene Pijlman" <reply.in.the.newsgroup@my.address.is.invalid> wrote:
    > Warden Dave:


    >>Als je daar echt aan een uiteindelijke '404 redirect' [...] wilt
    >>vasthouden
    >>kun je 't in je script bij bijv. een 'Moved Permanently' laten en de
    >>'Location' van een 404 document geven.

    >
    > Zo kan het ook. Iets minder netjes misschien, omdat je strikt genomen
    > browsers verzoekt een (gebookmarkte) URL te veranderen in een
    > onjuiste URL. Maar in de praktijk kom je hier vast wel mee weg.


    Voor de duidelijkheid: Ik bedoelde dan een '404 document' die wel die status
    geeft (komt zo +- neer op het hebben van een 'Errordocument' voor 404 en een
    niet bestaande 'Location' geven). Een client kan dan, via de omweg,
    besluiten dat de oorspronkelijke URL niet meer geldig is.

    groet,
    WD



Webhostingtalk.nl

Contact

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