Der findes mange mu­lig­he­der for at om­di­ri­ge­re domæner eller un­der­do­mæ­ner til en anden del af din hjem­mesi­de eller til en ekstern adresse. Om­di­ri­ge­rin­ger foretages ofte via .htaccess, PHP-script, HTML-metatags og Ja­va­Script.

Hvad bruges do­mæ­neom­di­ri­ge­rin­ger til?

Om­di­ri­ge­rin­ger bruges til at informere servere om, at indholdet på et websted er blevet flyttet fra en URL til en anden. Dette er nød­ven­digt, når den op­rin­de­li­ge we­badres­se er målet for et indgående link, er gemt på en brugers computer eller indtager en frem­træ­den­de placering på sø­ge­ma­ski­nens re­sul­tat­si­der (SERP’er). I dette tilfælde meddeler om­di­ri­ge­rin­gen browseren eller webcraw­le­ren, at indholdet er blevet flyttet, og giver brugeren et link til den nye adresse i stedet. Uden om­di­ri­ge­rin­ger ville besøgende på webstedet støde på en 404-fejlside i stedet for det websted, de søger efter.

Dette er noget, som især kom­merci­el­le webpro­jek­ter gerne vil undgå. Webshops tilbyder et sortiment, der hele tiden ændrer sig, og som vises på en lang række for­skel­li­ge websider. Når en vare ikke længere er på lager, om­di­ri­ge­res po­ten­ti­el­le kunder til en side med lignende produkter. På den måde kan du effektivt styre be­søgs­strøm­me­ne og minimere af­vis­nings­pro­cen­ten.

Når du opretter en do­mæ­neom­di­ri­ge­ring, kan du også gøre det samme indhold til­gæn­ge­ligt på for­skel­li­ge we­badres­ser. Alle al­ter­na­ti­ve adresser om­di­ri­ge­res ganske enkelt til det ønskede web­s­teds­do­mæ­ne, uanset hvilken specifik URL eller sti brugerne indtaster.

Hvilke typer do­mæ­neom­di­ri­ge­rin­ger findes der?

Der skelnes generelt mellem om­di­ri­ge­rin­ger på kli­ent­si­den og på ser­ver­si­den. Ved do­mæ­neom­di­ri­ge­rin­ger på ser­ver­si­den overføres de til­hø­ren­de HTTP-sta­tus­ko­der til bru­gera­gen­ter (browsere eller webcraw­le­re). Det ser lidt an­der­le­des ud, når det drejer sig om om­di­ri­ge­rin­ger på kli­ent­si­den. Disse udføres uden nogen form for svar, hvilket betyder, at der ikke udsendes nogen sta­tus­ko­der. Derfor un­der­støt­tes sidst­nævn­te ikke af alle bru­gera­gen­ter. Denne ulempe kan un­der­ti­den føre til si­tu­a­tio­ner, hvor besøgende forbliver på den op­rin­de­li­ge side og ikke vi­de­re­sen­des nogen steder. Ulemper som disse er årsagen til, at server-side-løsningen ofte fo­re­træk­kes til om­di­ri­ge­rin­ger. Client-side-løsninger bør kun bruges, når server-side-do­mæ­neom­di­ri­ge­rin­ger er udelukket af tekniske årsager.

En anden type do­mæ­neom­di­ri­ge­ring er den trans­pa­ren­te eller usynlige om­di­ri­ge­ring. Ved denne type om­di­ri­ge­ring ændres URL-adressen ikke. Når det drejer sig om do­mæ­neom­di­ri­ge­rin­ger med maskering, ændres den URL, der vises for brugeren, ikke, selvom klienten er blevet vi­de­re­sendt til et andet domæne og får vist indholdet af en anden webside. Da denne type vi­de­re­sen­del­se imid­ler­tid kan medføre problemer med in­dek­se­ring og den måde, URL’en vises på i browseren, anbefales den ikke, medmindre der er visse be­græns­nin­ger på plads.

Tip

Vil du oprette en do­mæ­neom­di­ri­ge­ring? I den følgende artikel fra IONOS’ hjælpe­cen­ter kan du læse en trinvis vej­led­ning i, hvordan du om­di­ri­ge­rer dit domæne til et andet domæne.

Om­di­ri­ge­rin­ger på ser­ver­si­den

I de fleste tilfælde foretages do­mæ­neom­di­ri­ge­rin­ger på ser­ver­si­den via kon­fi­gu­ra­tions­fi­len .htaccess eller et PHP-script. Disse metoder gør det muligt at angive in­di­vi­du­elt, hvilken HTTP-sta­tus­ko­de der skal vises til bru­gera­gen­ten. Dette giver web­s­teds­ad­mi­ni­stra­to­rer mulighed for at markere do­mæ­neom­di­ri­ge­rin­ger som enten per­ma­nen­te eller mid­ler­ti­di­ge. Til dette formål anvendes HTTP-sta­tus­ko­der­ne 301 og 302.

  • 301 – Flyttet permanent: Den anmodede ressource er nu permanent til­gæn­ge­lig under den om­di­ri­ge­re­de URL. Den gamle URL vil fra nu af være ugyldig. Her er en 301-om­di­ri­ge­ring påkrævet.
  • 302 – Flyttet mid­ler­ti­digt: Den anmodede ressource er til­gæn­ge­lig under den om­di­ri­ge­re­de URL. I mod­sæt­ning til 301-koden forbliver den op­rin­de­li­ge URL stadig gyldig.

Hvis HTTP-sta­tus­ko­den ikke er angivet eksplicit, re­tur­ne­rer web­ser­ve­ren sta­tus­ko­de 302 ved en om­di­ri­ge­ring på ser­ver­si­den. Dette er ikke altid nød­ven­digt, så det er bedst at indtaste den ønskede sta­tus­ko­de manuelt for hver om­di­ri­ge­ring, da dette mindsker risikoen for in­dek­se­rings­fejl, såsom URL-kapring. I mod­sæt­ning til 301-om­di­ri­ge­rin­gen in­for­me­rer 302-sta­tus­ko­den webcraw­le­re om, at den op­rin­de­li­ge URL skal forblive in­dek­se­ret. Hvis dette er ment som en permanent ændring, kon­kur­re­rer om­di­ri­ge­rings­adres­sen med om­di­ri­ge­rings­desti­na­tio­nen i sø­ge­ma­ski­nens indeks.

.htaccess-om­di­ri­ge­ring

.htaccess er en kon­fi­gu­ra­tions­fil til Apache-web­ser­ve­re. Den bruges til at til­si­de­sæt­te over­ord­ne­de indstil­lin­ger på ka­ta­log­ni­veau. Denne fil giver web­s­teds­ad­mi­ni­stra­to­rer mulighed for at foretage ka­ta­log­spe­ci­fik­ke indstil­lin­ger for domæner og deres un­der­ka­ta­lo­ger. En af funk­tio­ner­ne i .htaccess-filen er ser­ver­ba­se­re­de do­mæ­neom­di­ri­ge­rin­ger af enkelte adresser til andre URL’er.

Du kan oprette en do­mæ­neom­di­ri­ge­ring ved hjælp af kode i .htaccess-filen. Når en .htaccess-fil med følgende kode er placeret i ho­ved­map­pen, om­di­ri­ge­res an­mod­nin­ger til det op­rin­de­li­ge domæne på ser­ver­si­den til domænet www.example.com:

Redirect 301 / http://www.example.com/
apa­checonf

Denne kodelinje starter med redirect 301 og angiver, hvilken HTTP-sta­tus­ko­de serveren skal returnere. Herefter følger stien til det indhold, der skal om­di­ri­ge­res. I oven­stå­en­de eksempel om­di­ri­ge­res alt indholdet. Det sidste trin udføres, når den fulde desti­na­tions-URL om­di­ri­ge­res til bru­gera­gen­tens URL: http://www.example.com.

Denne metode gør det muligt at om­di­ri­ge­re enkelte filer. Følgende kode viser en .htaccess-om­di­ri­ge­ring fra et websted til et andet:

Redirect 301 /directory/example-document.html http://www.example.com/example.html
apa­checonf

Når HTTP-sta­tus­ko­de 301 er håndteret, angives filens sti (/directory/example-document.html), som skal om­di­ri­ge­res permanent, samt om­di­ri­ge­rings-URL’en (http://www.example.com/example.html).

Sådan vil den per­ma­nen­te om­di­ri­ge­ring se ud på en Apache-server med et aktivt mod_rewrite-modul:

RewriteEngine On
RewriteRule ^directory/example-document.html$ http://www.example.com/example.html [L,R=301]
apa­checonf

I kodelinje 01 aktiveres Apache-web­ser­ve­rens mod_rewrite-modul med kom­man­do­en RewriteEngine On. Herefter følger RewriteRule med stien til om­di­ri­ge­rings­fi­len og desti­na­tions­adres­sen. Caret- og dol­lar­tegn markerer hen­holds­vis be­gyn­del­sen og slut­nin­gen af stien, og L angiver den sidste mod_rewrite-regel for den på­gæl­den­de anmodning. R=301 re­tur­ne­rer HTTP-status 301.

Når man kon­fi­gu­re­rer en do­mæ­neom­di­ri­ge­ring via .htaccess, er det vigtigt at huske, at forkerte ind­tast­nin­ger kan få alvorlige kon­se­kven­ser for hjem­mesi­dens drift. Da disse ændringer træder i kraft umid­del­bart efter, at man har gemt .htaccess-filen, bør kon­fi­gu­ra­tio­ner­ne altid testes grundigt.

PHP-om­di­ri­ge­rin­ger

En do­mæ­neom­di­ri­ge­ring kan ikke kun foretages via en .htaccess-kon­fi­gu­ra­tion, men også gennem en kommando i et PHP-script (f.eks. i index.php). Følgende kode viser en permanent om­di­ri­ge­ring til den fiktive desti­na­tions-URL, www.example.com:

<?php
header("Status: 301 Moved Permanently");
header("Location: http://www.example.com");
exit;
?>
php

Ved vi­de­re­sen­del­se via et PHP-script defineres den ønskede HTTP-sta­tus­ko­de via funk­tio­nen header i den anden kodelinje. I dette eksempel skal der foretages en permanent 301-om­di­ri­ge­ring. Da om­di­ri­ge­rin­ger på ser­ver­si­den normalt udføres mid­ler­ti­digt, skal der tages aktive skridt til at gen­nem­fø­re per­ma­nen­te om­di­ri­ge­rin­ger via 301-sta­tus­ko­den. Ved per­ma­nen­te om­di­ri­ge­rin­ger re­gi­stre­res do­mæ­neom­di­ri­ge­rin­gens desti­na­tions­adres­se også med header. Om­di­ri­ge­rin­gen i dette eksempel går derefter til adressen http://www.example.com. Funk­tio­nen exit i linje 04 i koden afslutter scriptet og for­hin­drer, at en ef­ter­føl­gen­de kodelinje udføres. For at om­di­ri­ge­rin­ger kan fungere via PHP-script, skal ko­de­blok­ken være i be­gyn­del­sen af HTML-siden. Dette for­hin­drer serveren i at overføre HTML-indhold til om­di­ri­ge­rings­si­den.

Om­di­ri­ge­rin­ger på kli­ent­si­den

Hvis det af tekniske årsager ikke er muligt at gen­nem­fø­re en do­mæ­neom­di­ri­ge­ring på ser­ver­si­den, har web­s­teds­o­pe­ra­tø­rer mulighed for at anvende løsninger på kli­ent­si­den. Til dette formål kan man benytte HTML-me­ta­ta­g­get refresh samt Ja­va­Script. Ulempen ved om­di­ri­ge­rin­ger på kli­ent­si­den er, at serverne ikke sender HTTP-sta­tus­ko­der til de anmodende browsere eller webcraw­le­re, hvilket betyder, at disse ikke ud­tryk­ke­ligt in­for­me­res om om­di­ri­ge­rin­gen. Desuden un­der­støt­tes kli­ent­si­de-om­di­ri­ge­rin­ger ikke af alle bru­gera­gen­ter, hvilket betyder, at der er en risiko for, at ikke alle besøgende på websiden bliver om­di­ri­ge­ret.

Om­di­ri­ge­rin­ger på kli­ent­si­den har en negativ ind­virk­ning på sø­ge­ma­ski­ner­nes in­dek­se­ring. En eksplicit ude­luk­kel­se fra in­dek­se­ring via HTTP-sta­tus­ko­de 301 finder ikke sted ved om­di­ri­ge­rin­ger på kli­ent­si­den. Dette kan føre til, at om­di­ri­ge­rings­do­mæ­ner­ne kon­kur­re­rer med må­l­do­mæ­ner­ne, når det gælder pla­ce­rin­gen i sø­ge­ma­ski­ner­ne. I mod­sæt­ning til om­di­ri­ge­rin­ger på ser­ver­si­den, som stort set forbliver usynlige for brugerne, er om­di­ri­ge­rin­ger på kli­ent­si­den altid forbundet med for­sin­kel­ser, som nogle brugere kan ende med at lægge mærke til.

Vi­de­re­sen­del­se via HTML-meta-refresh

HTML-me­ta­om­di­ri­ge­rin­ger im­ple­men­te­res via metatags med at­tri­but­ten http-equiv. Det eneste, der kræves, er en simpel HTML-fil og et til­hø­ren­de tag i headeren til at oprette om­di­ri­ge­rin­ger. For at besøgende på din hjem­mesi­de bliver in­for­me­ret om om­di­ri­ge­rin­gen, bør der indsættes en passende med­del­el­se i HTML-do­ku­men­tet. Typiske eksempler er linjer som »Vent venligst et øjeblik. Du bliver om­di­ri­ge­ret…«. En simpel do­mæ­neom­di­ri­ge­ring via HTML-meta-refresh ser således ud:

<meta http-equiv="refresh" content="10; url=http://www.example.com/">
html

Brugeren bliver bedt om at om­di­ri­ge­re domænet via me­ta­ta­g­get http-equiv="refresh". Hvordan dette skal foregå, kan angives i at­tri­but­ten »content«. I eksemplet om­di­ri­ge­res brugerne til må­l­do­mæ­net www.example.com efter ti sekunder.

Ja­va­Script-om­di­ri­ge­rin­ger

Ja­va­Script giver en nem mulighed for do­mæ­neom­di­ri­ge­rin­ger på kli­ent­si­den. Ligesom det er tilfældet med meta-tagget refresh, bør Ja­va­Script-om­di­ri­ge­rin­ger dog kun anvendes i enkelte tilfælde, da dette script­ba­se­re­de sprog ikke un­der­støt­tes af alle web­brow­se­re af sik­ker­heds­mæs­si­ge årsager. Ja­va­Script kan også skabe problemer for webcraw­le­re og brugere med aktive NoScript-ud­vi­del­ser. Sådan ser koden ud for en do­mæ­neom­di­ri­ge­ring via Ja­va­Script:

<script> 
window.location.replace('http://www.example.com'); 
</script>
html

Det vigtigste her er den tredje kodelinje. I ek­sem­pel­ko­den bruges objektet window.location til at henvise til den aktuelle we­badres­se. Kom­man­do­en replace in­stru­e­rer browseren om at om­di­ri­ge­re brugeren til det domæne, der er angivet i pa­ren­te­ser­ne: www.example.com.

Gå til ho­ved­me­nu­en