Jeg flyttet nylig nettstedet mitt fra en undermappe til domeneroten. Dette medførte noen tekniske utfordringer.
Den primære vanskeligheten var å beholde alle artiklene tilgjengelige på den opprinnelige stien, samtidig som URL-ene ble omdirigert fra undermappen til selve domeneroten eller en annen spesifikk adresse.
Konfigurasjon i Apache
Apache HTTP-serveren gir støtte for bruk av RewriteCond
. For å utføre denne endringen må du redigere enten .htaccess
-filen eller httpd.conf
-filen. Legg til følgende linjer for å oppnå ønsket resultat:
RewriteEngine on RewriteBase / RewriteRule ^undermappe/(.*)$ /$1 [R=301,NC,L]
I dette tilfellet har vi valgt /
som vår basis, og RewriteRule
vil håndtere alle URL-er som befinner seg i undermappen ved hjelp av regulære uttrykk. Direktivet R=301
spesifiserer en permanent omdirigering, noe som er viktig for SEO.
Nginx Konfigurasjon
Vi kan implementere en tilsvarende omdirigering med Nginx ved å bruke rewrite
-direktivet i /etc/nginx/nginx.conf
eller i /etc/nginx/conf.d/default.conf
, avhengig av din konfigurasjon. Her er koden:
location ^~ /undermappe { rewrite ^/undermappe(.*)$ $1 last; }
Modifikatoren ^~
sørger for at denne prefiks-lokasjonen prioriteres over eventuelle fremtidige regex-lokasjoner, noe som bidrar til konsistens og forutsigbarhet.
Konfigurasjon i IIS
Med IIS kan vi benytte Rewrite-modulen for å omskrive URL-er som er plassert i en undermappe. Dette gjør at det ser ut som de befinner seg i roten av domenet. Du kan modifisere web.config
-filen din i webrotmappen (vanligvis lokalisert i %SystemDrive%inetpubwwwroot
) med følgende oppsett:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Root_URL_Rewrite" stopProcessing="true"> <match url="^(.*)" /> <action type="Rewrite" url="/undermappe/{R:0}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
Alternativt kan du også bruke URL Rewrite-grensesnittet i IIS Manager for å opprette en innkommende regel. Dette kan være mer intuitivt for noen brukere.
Cloudflare Omdirigering
En lignende omdirigering kan konfigureres i Cloudflare. Følg disse trinnene:
- Logg deg på Cloudflare-kontoen din.
- Velg den aktuelle Cloudflare-kontoen for det domenet du ønsker å konfigurere omdirigeringen for.
- Naviger til «Regler»-appen, og velg deretter fanen «Sideregler».
- Under «Sideregler» klikker du på «Opprett sideregel». Dette vil åpne en ny dialogboks.
- I «Hvis URL-en samsvarer»-feltet, skriver du inn URL-mønsteret for undermappen, f.eks.
https://eksempel.com/undermappe
. - Klikk deretter på «Legg til en innstilling» og velg «Videresend URL» fra menyen.
- Under «Velg statuskode» velger du enten 301 (Permanent Redirect) eller 302 (Temporary Redirect).
- Skriv inn destinasjonsadressen for rotdomenet og klikk på «Lagre og distribuer» for å aktivere regelen.
Et eksempel på dette er å omdirigere alt fra https://tipsbilk.net.com/blog
til https://tipsbilk.net.com
.
Oppsummering
Som du ser er omdirigering eller kartlegging av en undermappe til roten, eller en annen URL, en vanlig oppgave. Dette støttes av de fleste populære webservere og nettverkstjenester med forskjellige løsninger.
Neste steg kan være å undersøke hvordan du kan hoste flere nettsteder på én enkelt IP-adresse.
Likte du denne artikkelen? Del den gjerne med andre!