ForwardEen doorsturing, of Site Redirection is een eenvoudige manier om een bezoeker bij een bepaalde URL op uw site door te verwijzen naar een andere plek op uw website. U kunt zelfs de bezoeker doorverwijzen naar een compleet andere website. In het Control Panel vindt u -indien beschikbaar- bij "Geavanceerd" de optie "Sitedoorsturingen":

Sitedoorsturing menukeuze in het control panel

Stel dat u d-dighosting.nl/blog wilt laten doorverwijzen naar http://www.d-dig.com, en d-dighosting.nl/fotoforum naar http://www.d-dig.nl/forums. Natuurlijk gelden in uw situatie andere hoofddomeinen en andere doorverwijzingen. Voor bovenstaand voorbeeld vult u dit in:

Voorbeeld van sitedoorsturing in het control panel

Een redirect bekent doorzenden, doorsturen. en dat is precies wat er gebeurt: als de pagina bezocht wordt zal de bezoeker doorgestuurd worden naar een andere lokatie. Dat kan een andere pagina binnen dezelfde website maar ook een pagina op een compleet andere website zijn. Er kunnen verschillenden redenen zijn om redirects te gebruiken. De site is bijvoorbeeld naar een nieuw domein verhuisd, en bij het bezoeken van het oude domein moet de gebruiker automatisch op de nieuwe plek terecht komen. Een andere reden kan zijn dat de URL van een pagina verandert, terwijl de inhoud hetzelfde blijft. De bezoeker moet dan zowel op de oude als op de nieuwe URL de nieuwe pagina te zien krijgen. En u kunt ervoor kiezen om gelijkende URL's om te leiden naar een en dezelfde website. Bijvoorbeeld http://www.d-dig.nl, http://ddig.nl en http://www.dutch-dig.nl die allen naar dezelfde website leiden.

Er zijn verschillende soorten redirects:

  • 301 - Moved Permanently (Permanent)

Permanente verhuizing. De pagina's zijn definitief op een nieuwe locatie te vinden. Een 301 redirect is bijvoorbeeld op zijn plaats indien pagina's niet in uw root staan (mijndomein.nl) maar op een plek dieper in de mappenstructuur (mijndomein.nl/blogs/wordpress). U kunt dan de hoofdpagina definitief doorverwijzen naar mijndomein.nl/blogs/wordpress zodat uw gebruikers simpelweg mijndomein.nl in kunnen typen. Google ondersteunt 301 redirects, en uw pagina's zullen correct en op de juiste plaats geindexeerd worden. Google 'vergeet' hierbij de oude lokatie, en zal enkel de nieuwe lokatie indexeren. Vandaar 'permanent', de nieuwe lokatie is blijvend, de oude lokatie mag vergeten worden.

  • 302 - Moved Temporary (Tijdelijk). - correcte W3C naam is "302 - Found".

Pagina's die tijdelijk verplaatst zijn kunnen een 302 redirect krijgen. De 302 redirect is vaak verkeerd toegepast, zoals u onder aan deze pagina kunt lezen. Een voorbeeld van een tijdelijke redirect kan zijn dat een website een tijdelijke actiepagina heeft of een wedstrijd pagina die op zeker moment weer achterhaald is. Dan kan de normale voorpagina tijdelijk vervangen worden door een andere. Google indexeert de inhoud van de nieuwe URL tijdelijk even op de oude lokatie, maar vergeet daarbij de oude lokatie dus niet. De oude lokatie zal op enig moment weer ingesteld worden als de 'normale' standaardlokatie. Bij tijdelijk moet u denken aan dagen / weken tot enkele maanden, als vuistregel.

  • 303 - Replace (Vervangen). - correcte W3C naam is "303 - See Other".

Uitleg over dit type redirect is vrij technisch. Eén ding is zeker: deze redirect wordt weinig gebruikt in situaties waar er wel degelijk een goede toepassing voor is. U kent vast wel de "Webpagina is verlopen" melding als u een webpagina bezoekt of een webformulier invulde en dan op de "Back" toets drukt van de browser. Dit is meestal te wijten aan een verkeerde redirect.

Als een formulier op een pagina verstuurd wordt (gebruiker drukt op OK of Verzenden), zal de server deze pagina verwerken en terugkomen met een nieuwe pagina om te laden. Een juiste redirect is dan belangrijk, omdat het indrukken van de "Back" toets niet moet zorgdragen voor het opnieuw versturen van het formulier. De informatie moet immers niet twee maal verzonden worden, en dat gebeurt wel indien u de Back toets indrukt (de vorige pagina was 'verstuur dit formulier' en niet het formulier zelf).

Met een 303 redirect is dit te verhelpen. De "303 See Other" redirect vertelt de browser dat geschakeld moet worden naar een GET request en dat door moet worden gegaan met de verwerking. Het zegt niet of de redirect permanent of tijdelijk is. De browser moet nooit een 303 response cachen. Dit is erg belangrijk voor een correcte werking van scripts.

Dit is wat het W3C (World Wide Web Consortium) er over meldt:

"The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource. This method exists primarily to allow the output of a POST-activated script to redirect the user agent to a selected resource. The new URI is not a substitute reference for the originally requested resource. The 303 response MUST NOT be cached, but the response to the second (redirected) request might be cacheable."

Er zijn veel meer redirect typen. En de correcte W3C naamgeving wijkt af van de naamgeving die u veel op internet zult aantreffen. Volgens W3C is het:

In plaats van de 307 - Temporary Redirect wordt erg vaak de 302 - Found gebruikt alsof dit de "Tijdelijke verwijzing" is. Dit is volgens ons gewoon fout. Tenzij de W3C ernaast zit natuurlijk, echter dat zijn de grondleggers en degenen die al dit moois verzinnen. Ons advies is om de 307 - Temporary Redirect te gebruiken als u een tijdelijke redirect nodig hebt.