Apache's mod_rewrite giver en kraftig metode til at manipulere URL'er på serversiden, konvertere dem til ren og brugervenlig formater. Denne guide fører dig gennem forståelsen af mod_rewrite, dens fordele og hvordan du konfigurerer det på en VPS med Apache.

Baggrund

Når en URL indtastes, gennemsynes den mod et sæt prædefinerede regler. Disse regler identificerer specifikke mønstre eller nøgleord i URL'en. Hvis et designet nøgleord er detekteret og reglen passer, udløser det erstattelsen af den identificerede del med en forudbestemt streng – hvilket genererer en ny URL.

mod_rewrite viser sig værdifuldt, da det giver brugere mulighed for at transformere URL'er til ren og brugervenlig formater. Dette er især gavnligt for slutbrugere uden teknisk viden, da de forenkrede URL'er nemt forstårbar og søgemaskinevenlige.

For at illustrere begrebet af en ren URL, overvej følgende eksempler:

  1. URL1: http://modrewriteexample.com/client.php?id=A786#234QA
  2. URL2: http://modrewriteexample.com/client/=A786#234QA/
  3. URL3: http://modrewriteexample.com/client/Martha/

Blandt disse tre URL'er fremhæver den tredje sigifikant mere læsbar og forståelig for slutbrugeren. URL 3 kvalificerer sig som en ren URL i denne sammenhæng.

Forudsætninger

Før du fortsætter, sørg for SSH-adgang til din VPS.

Sådan Sætter du op mod_rewrite

  1. Trin 1: Installer Apache

    I denne demonstration på Ubuntu 18.04, brug det indbyggede pakkeinstalleringsprogram, apt-get. Begynd med at opdatere det:

    sudo apt-get update

    Så fortsæt med installationen af Apache2:

    sudo apt-get install apache2
  2. Trin 2: Aktivér mod_rewrite

    Aktivér mod_rewrite med følgende kommando:

    sudo a2enmod rewrite

    Denne kommando aktiverer omskrivningsmode, eller informerer dig hvis den allerede er i brug. Derefter genstart Apache:

    sudo service apache2 restart
  3. Trin 3: Opret .htaccess-filen

    For at etablere prædefinerede URL-omskrivningsregler, brug .htaccess-filen. Brugere kan manuelt skrive regler i denne fil. Da serveren refererer til denne fil, kan eventuelle fejl resultere i en serversidefejl. .htaccess-filen bør oprettes i roden for at teste omskrivningsfunktionaliteten.

    Begynd med at køre følgende kommando:

    sudo nano /var/www/html/.htaccess

    Denne kommando opretter .htaccess-filen, hvis den ikke findes, eller åbner den, hvis den allerede eksisterer. Gem og afslut i nano ved at trykke CTRL+O for at gemme og CTRL+X for at afslutte.

    Næste trin er at åbne 000-default.conf-filen placeret i mappen /etc/apache2/sites-enabled/:

    sudo nano /etc/apache2/sites-enabled/000-default.conf

    I denne fil indsæt følgende blok efter strengen :

    
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    

    Gem filen på samme måde som .htaccess. Genstart Apache, som nævnt i trin to, for at ændringerne træder i kraft.

  4. Trin 4: Opret en URL-omskrivningsregel

    URL-omskrivning indebærer valg af en ren URL og transformation til faktiske stier, der fører til kode. Det består af følgende komponenter:

    • En prædefineret omskrivningsregel
    • Et mønster som fungerer som matchingsreference med den indtastede URL
    • Omskrivningslinjer, der angiver stien, der skal kaldes af serveren på det punkt

    Lad os oprette en omskrivningsregel til at viderestille brugeren til About_us.html-siden, hvis den anmodede URL er https://internetport.se. For succesfuld udførelse skal omskrivningsmotoren være aktiveret. Åbn .htaccess-filen og tilføj følgende syntaks:

    RewriteEngine on
    RewriteRule ^About_us$ About_us.html [NC]

    Opdeling af syntaksen:

    • About_us er mønstret, der viderestilles til About_us.html, når det matcher
    • NC er en flag for ikke-forskel på store og små bogstaver
    • ^ indikerer matchning umiddelbart efter IP-adressen

    Tillykke! Du har nu oprettet en mod_rewrite-regel!

Afslutning

Læsbar, ren og brugervenlig URL'er er kritisk for en succesfuld hjemmeside. Indkludering af nøgleord i URL'er er essentielt til hukommelse og SEO. Med mod_rewrite kan du oprette mange omskrivningsregler for at forbedre din hjemmesides URL-struktur.