Din hjemmeside er måske gået ned, efter at du har foretaget et par ændringer i din .htaccess-fil. Men det er ikke noget at være bekymret over!
Det sker med mange SEO’er, som forsøger at gå den ekstra mil ved at lave tekniske rettelser.
Sædvanligvis giver de redigeringer, der er foretaget via WordPress-dashboardet, et mini-panikanfald, da du er låst fra dashboardet, når du opdaterer den fejlagtige .htaccess-fil.
.htaccess-filer er både en velsignelse og en forbandelse for SEO’er, da de hjælper dig med at tilpasse funktionerne på dit websted.
Som starter med at beskytte filer med en adgangskode, lave en 301-omdirigering eller oprette en særlig fejlside, er .htaccess praktisk, hvis dit websted kører på Apache-webserveren.
Hvis du er en person, der leder efter et hurtigt fix til at få dit websted tilbage i live efter en fejl i .htaccess-opdateringen, eller hvis du vil lære mere om optimering af .htaccess på dit websted, er dette den ressource, som du troede aldrig havde eksisteret.
Vi vil give dig nogle meget hurtige .htaccess rettelser og tips, så du som SEO nu trygt kan foretage ændringer på hjemmesiden uden at bekymre dig om efterdønningerne.
Du ved allerede, hvad .htaccess er, og hvor nyttigt det er for en webmaster, der kører en Apache-webserver.
Men jeg vil dog forklare et par grundlæggende ting om .htaccess for begyndere for at hjælpe dem med at forstå det, før de implementerer det.
Du er velkommen til at skifte til et kapitel efter eget valg ved hjælp af indholdsfortegnelsen.
- Hvad er .htaccess?
- Hvad står .htaccess for?
- Hvad bruges .htaccess til?
- Hvor kan du finde .htaccess-filen?
- Hvad nu, hvis dit websted ikke har en .htaccess-fil?
- Stræk for at oprette en brugerdefineret .htaccess-fil
- Hvad skal du gøre, hvis du bliver låst ude af WordPress Dashboard efter opdatering af .htaccess-filen?
- Hvorfor ser du en fejl efter opdatering af .htaccess-filen?
- Hvad er de almindelige fejlmeddelelser, som du får efter opdatering af .htaccess-filen?
- Her er en liste over fejlkoder, som webservere viser, når de ikke kan hente de ønskede data.
- Client Request Errors
- Serverfejl
- Hvad bruges .htaccess til?
- Omdirigeringer
- SEO-venlige URL’er
- Aktivering af Gzip-komprimering
- Aktivering af Deflate Option
- Brug af .htaccess til forbedret crawling og indeksering
- Konklusion
- Fordelene ved .htaccess-filen
- Ulemper ved .htaccess-fil
Hvad er .htaccess?
.htaccess er en konfigurationsfil, der kan læses og udføres af Apache-webserversoftwaren for at aktivere/deaktivere yderligere funktioner og egenskaber. Da .htaccess-filen eksisterer i et Unix-baseret miljø og vises på mappeniveau, tilsidesætter den de globale webserverindstillinger, hvilket giver mulighed for brugerdefineret konfiguration af webstedsadgang.
Hvad står .htaccess for?
.htaccess er en forkortelse for “hypertext access”. Navnet blev afledt efter, at filen blev populær blandt udviklere, der brugte den til at ændre brugertilgængelighedsfunktionerne på et enkelt mappebasis.
.htaccess bruger Apache-serverens http.config-direktiver til at tillade og begrænse adgangen til mapper for enkeltpersoner ved hjælp af brugernavne og adgangskoder. Når det drejer sig om SEO’er, spiller .htaccess dog en endnu større rolle for SEO’er.
Hvad bruges .htaccess til?
Hvis du har et websted, der kommer op med forskellige krav på en konstant basis, skal du betragte .htaccess som en velsignelse.
Som SEO er .htaccess praktisk, da du kan bruge den til at give direktiver til webserveren til 301-omdirigeringer, aktivere caching, opdatere HTTP-headers, kontrollere crawling, gøre URL’er SEO-venlige og meget mere!
Hvor kan du finde .htaccess-filen?
Da .htaccess er en konfiguration på mappeniveau, kan du finde den i næsten alle mapper i din webmappe. Hvis du har en enkelt webmappe med flere undermapper (websted), kan .htaccess-filen findes i rodmappen såvel som i hver enkelt undermappe.
Hvis du er WordPress-bruger, er den bedste måde at få adgang til .htaccess-filen på via Yoast Plugin Option.
Varsel: Da .htaccess ikke er noget, som begyndere bør lege med, anbefaler jeg, at du afprøver det på demositet. Du skal også have rigelig viden om at bruge Filezilla til at få adgang til rodmappen, hvis du bliver låst ude af WordPress-administrationen.
Hvis du kører et WordPress-websted, er der en håndfuld plugins, der understøtter redigering af .htaccess-filen. Da de fleste WordPress-brugere vælger Yoast som deres standard SEO-plugin, vil jeg gerne forklare, hvordan du kan redigere .htaccess-filen i Yoast Dashboard i WordPress.
Stræk 1: Log ind på dit WordPress Admin Dashboard
Stræk 2: Åbn Yoast Settings
Stræk 3: Åbn Tools
Stræk 4: Inden for værktøjerne skal du vælge “File Editor”
Stræk 5: Rediger .htaccess-filen, og gem
I de fleste WordPress-websteder leveres .htaccess med denne standardkonfiguration:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ -
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
# END WordPress
Hvad nu, hvis dit websted ikke har en .htaccess-fil?
Da .htaccess er en automatisk genereret konfigurationsfil, vil den i 99 % af tilfældene være til stede. Men det er normalt en skjult fil i mapperne, og webmastere tror, at den mangler. Du skal bare aktivere “show hidden files”, så burde du kunne finde den.
Hvis du ikke kan finde .htaccess-filen selv efter at have gjort dette, skal du muligvis skrive en manuelt og uploade den til din webserver.
Stræk for at oprette en brugerdefineret .htaccess-fil
Stræk 1: Åbn notepad
Stræk 2: Skriv konfigurationen ned (for at teste skal du bruge standardkonfigurationen, der er angivet ovenfor)
Stræk 3: Gem filen i ASCII med filnavnet .htaccess
Stræk 4: Sørg for, at filen ikke bliver gemt i .txt-format
Stræk 5: Brug Filezilla til at uploade .htaccess-filen til din webmappe
Bemærk: Hvis du er WordPress-bruger og har et tomt felt til .htaccess-filen, skal du blot tilføje konfigurationen og gemme.
Hvad skal du gøre, hvis du bliver låst ude af WordPress Dashboard efter opdatering af .htaccess-filen?
Du har muligvis opdateret .htaccess-filen ved hjælp af Yoast eller ved hjælp af WP File Manager og er blevet låst ude af dashboardet. Du skal ikke gå i panik. Dette kan nemt løses.
Hvis du er en SEO, skal du få FTP-adgang til dit websted fra udvikleren på den, der administrerer serveren. Hvis du har brug for hjælp fra en ekspert, kan din udvikler være den bedste hjælpende hånd.
Stræk 1: Log ind på din webmappe ved hjælp af FileZilla
Stræk 2: Download .htaccess-filen fra mappen
Stræk 3: Opdater den .htaccess-filen med standardkonfigurationen, og gem den
Stræk 4: Udskift den gamle .htaccess-fil i mappen med den nye
Bemærk: Hvis din prioritet er at bringe webstedet online igen hurtigst muligt, skal du bruge standardkoden. Men hvis du har foretaget en masse ændringer i .htaccess-filen, skal du forsøge at finde den kode, der gav bagslag. Fjern den, inden du uploader den tilbage til serveren.
Hvorfor ser du en fejl efter opdatering af .htaccess-filen?
Hvis du er en SEO, der forsøger at lære .htaccess i dybden, er der stor sandsynlighed for, at du ender med at lave et par fejl i begyndelsen. Dette er helt fint, indtil du forstår, hvorfor webserveren har markeret en fejl.
Der er et par almindelige problemer, som SEO’er støder på, når det gælder opdatering af .htaccess-filen. Her er listen over de mest almindelige .htaccess-problemer.
- Disabled Override: For at din .htaccess-fil kan fungere, skal du først aktivere AllowOverride-indstillingen. Hvis AllowOverride-indstillingen er indstillet til None (Ingen), vil alle konfigurationer, der er indstillet i .htaccess-filen, blive deaktiveret. For at sikre, at indstillingen Override er aktiveret, skal du følge dette trin:
Strin 1: Åbn Apache-konfigurationsfilen (http.conf)
Strin 2: Indstil Allow OverRide-direktivet som : AllowOverride All
Stræk 3: Gem Apache-konfigurationsfilen, og genstart Apache-serveren
- Fejlstaveret filnavn: Dette er den næstmest almindelige fejl, som SEO’er begår. Da .htaccess er en Unix-baseret konfigurationsfil, der er gemt i ASCII, vil en forkert stavemåde resultere i en fejl. Hvis filen ikke starter med et “.” eller bliver uploadet i et andet filformat som f.eks. .txt, vil Apache-serveren ignorere filen og den konfiguration, som du har indstillet.
- Hierarki af .htaccess Sager: .htaccess-filer udføres på baggrund af deres hierarki. Nogle få regler, der er fastsat i begyndelsen af .htaccess-filerne, kan annullere de regler, der kommer i den senere fase af konfigurationen. Hvis du mener, at disse er kritiske, skal du prøve at flytte den pågældende konfiguration op.
- Flere .htaccess-filer: Da .htaccess-filer kan bruges pr. mappe, er der en chance for, at dit websted bruger flere .htaccess-filer. I sådanne tilfælde kan en fil være i modstrid med den konfiguration, der er indstillet i en anden, hvilket resulterer i fejl. Du kan løse problemet ved at deaktivere de enkelte .htaccess-filer.
- Syntaksfejl: .htaccess-filen fungerer helt baseret på den syntaks, der bruges til at konfigurere dit websted. En syntaksfejl i filen kan gøre dit websted offline og forårsage et panikangreb. Så det er bydende nødvendigt at forstå syntaksen, før du opdaterer dine .htaccess-filer.
Hvad er de almindelige fejlmeddelelser, som du får efter opdatering af .htaccess-filen?
Hver gang en bruger besøger dit websted, interagerer han/hun direkte eller indirekte med webserveren. De sider, som de får ved at klikke på de billeder og andre ressourcer, som de ser, hentes af webserveren, hvilket betyder, at du som webmaster kan begrænse det.
Nogle websteder bruger .htaccess til at indstille autentificering for adgang til websteder. Når det drejer sig om SEO’er, bruger de det for at sikre, at brugerne og søgemaskinernes bots får nem adgang til de sider, der betyder mest. Hvis webstedet ikke kan levere de ønskede oplysninger, genereres der en fejlkode af webserveren baseret på de konfigurationer, der er angivet i .htaccess-filen.
Her er en liste over fejlkoder, som webservere viser, når de ikke kan hente de ønskede data.
Client Request Errors
- 400 – Bad Request: URL-struktur er ugyldig. Serveren er ikke i stand til at forstå den anmodning, som brugeren har fremsat.
- 401 – Autorisation påkrævet: Disse meddelelser vises, når webmasterne har begrænset adgangen til siden.
- 402 – Betaling påkrævet (endnu ikke brugt): Hvis betalingsinitieringen ikke finder sted, vises som regel denne kode.
- 403 – Forbidden – Den simple grund til, at du får en 403-fejl, er, at du forsøger at få adgang til en ressource, der har begrænset tilladelse. Et websted viser 403 forbudte fejl, når brugerne forsøger at få adgang til en side, der kræver autentificering.
- 404 – Ikke fundet: 404 er en klar indikation til brugerne om, at den ønskede URL ikke er tilgængelig på webstedet. Det kan skyldes en skrivefejl i URL’en, eller når siden er blevet fjernet fra webstedet.
- 405 – Method Not Allowed (Metode ikke tilladt): Denne HTTP-svarstatuskode angiver, at serveren har nægtet at acceptere anmodningsmetoden, selv om den forstår formålet med anmodningen.
- 406 – Ikke acceptabel (kodning): Dette sker normalt, når serveren ikke kan svare med accept-header-anmodningen.
- 407 – Proxy-autentificering påkrævet: Denne fejl angiver, at anmodningen ikke kan imødekommes, fordi der mangler proxyservergodkendelse mellem browseren og serveren.
- 408 – Request Timed Out: Dette er en af de almindelige HTTP-fejl, som webmastere støder på, når serveren ikke kan modtage en komplet anmodning fra klientsiden inden for den tildelte timeout-periode.
- 409 – Conflicting Request (modstridende anmodning): Denne fejl opstår, når målressourcens tilstand er i konflikt med den aktuelle tilstand. For at løse fejlen skal du identificere konflikten og indsende den igen.
- 410 – Gone: Denne fejlkode repræsenterer, at adgangen til den anmodede ressource er blevet permanent fjernet fra serveren, og det vil den forblive hele tiden.
- 411 – Content Length Required (Indholdslængde påkrævet): Fejlen repræsenterer serverens manglende evne til at acceptere klientens anmodning, fordi content-length-headeren ikke er defineret.
- 412 – Precondition Failed (Forudsætning mislykkedes): Det er en fejl, der skyldes et sikkerhedsmæssigt sammenstød med en eller flere af de sikkerhedskonfigurationer, der er blevet implementeret på din server.
- 413 – Request Entity Too Long (Anmodningsenhed for lang): Når den anmodede ressource er for stor til, at serveren kan indlæse den, kan brugeren opleve fejlen 413.
- 414 – Anmodning URI for lang: Tænk blot på en URL-struktur på over 2048 tegn. Serveren kan ikke dechifrere den resulterende 414-fejl.
- 415 – Ikke understøttet medietype: Denne fejl vises, når serveren nægter at indlæse en ressource, der er i et medieformat, der ikke er understøttet.
Serverfejl
- 500 – Internal Server Error
- 501 – Not Implemented
- 502 – Bad Gateway
- 503 – Service Unavailable
- 504 – Gateway Timeout
- 505 – HTTP Version Not Supported.
Hvad bruges .htaccess til?
Omdirigeringer
Har du lige ændret domænenavnet på dit websted?
Som SEO vil du bestemt ikke have, at dine brugere skal se en 404-side, og du ønsker heller ikke, at al den hårdt optjente autoritet bare forsvinder.
Se din .htaccess som et universalmiddel for begge disse bekymringer. Hvis du tilføjer redirect-direktivet til din .htaccess-fil, kan du omdirigere din trafik og webstedsautoritet til det nye domæne.
Det interessante er, at du kan gøre det samme, når det kommer til URL’erne på dit websted. Ved at oprette et 301 redirect-direktiv skubber du dine brugere og søgemaskine-bots, der forsøger at få adgang til en gammel URL, til at læse en ny side på dit websted.
Eksempel på omdirigering på domæneniveau med .htaccess:
# This allows you to redirect your entire website to any other domain
Redirect 301 / http://example.com/
Eksempel på URL-omdirigering med .htaccess:
# This allows you to redirect your entire website to any other domain
Redirect 301 / http://example.com/
Eksempel på URL-omdirigering med .htaccess:
RedirectMatch 301 ^/old-url.html$ /new-url.html
SEO-venlige URL’er
Er din URL-struktur forvirret? Er brugere og søgemaskinebots ikke i stand til at forstå, hvad der er på siden? Det sker for en hel del webmastere.
Den manglende opmærksomhed på URL-strukturen i starten bliver en stor smerte, efter at webstedet får autoritet.
Ved hjælp af .htacces kan du indstille den korrekte URL-struktur for dit websted.
Dertil kommer, at enhver udvidelse, der følger med din URL, f.eks. .html eller .php, nemt kan fjernes ved at tilføje direktiver til .htaccess.
Eksempel 1: Brug af .htaccess til at fjerne udvidelser i URL’en
Fjernelse af .php som udvidelse
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ .php
Fjernelse af .html som udvidelse
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)$ .html
Eksempel 2: Brug af .htaccess til at gøre URL’er med små bogstaver
Metode 1
RewriteCond %{REQUEST_URI}
RewriteRule . ${lc:%{REQUEST_URI}}
Overstående kode vil påvirke alle URL-strukturer, herunder domænenavnet.
Metode 2
RewriteCond %{REQUEST_URI}
RewriteRule ^.+.html$ ${lc:%{REQUEST_URI}}
Overstående vil kun påvirke html-filnavne.
Eksempel 2: Brug af .htaccess til dynamisk URL-rewriting
RewriteEngine On
RewriteRule /(.*)/(.*)/$ page.php?category=&product=
Dårlig URL: site.com/page.php?category=2&product=54
God URL: site.com/sandwiches/rueben-sandwich/
- Brug af .htaccess til at forbedre webstedets hastighed
Sidehastighed er det nye hoo-ha blandt webmastere.
De har alle grunde til at skabe uro, da Google nu betragter det som en af de vigtigste faktorer, mens de rangerer sider på SERP.
Google ønsker ikke, at brugerne skal have en dårlig brugeroplevelse fra de øverste listede sider.
Dertil kommer, at et websted med langsom indlæsning æder en masse crawlbudget.
En af de nemmeste og sikreste måder at forbedre webstedets hastighed på er ved at konfigurere din .htaccess-fil.
- Aktivering af cache-funktionen
Gennem at aktivere cache-funktionen i .htaccess-filen bliver webstedets ressourcer gemt i den besøgendes browser, hvilket muliggør hurtig indlæsning.
Du kan aktivere cache ved hjælp af to forskellige metoder
ExperiesByType – Ved hjælp af denne metode i .htaccess kan du indstille en cache-tidsramme, aka udløbsdato for hver ressource på dit websted.
Eksempel:
<ifModule mod_headers.c>
# YEAR
<FilesMatch ".(ico|gif|jpg|jpeg|png|flv|pdf)$">
Header set Cache-Control "max-age=29030400"
</FilesMatch>
# WEEK
<FilesMatch ".(js|css|swf)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
# 45 MIN
<FilesMatch ".(html|htm|txt)$">
Header set Cache-Control "max-age=2700"
</FilesMatch>
</ifModule>
Cache-Control Header – Cache-control-headeren bruger maksimal alder for ressourcerne, før de udløber.
Eksempel:
# One month for most static assets
<filesMatch ".(css|jpg|jpeg|png|gif|js|ico)$">
Header set Cache-Control "max-age=2628000, public"
</filesMatch>
Aktivering af Gzip-komprimering
Den ene årsag, der forringer hastigheden på et websted, er størrelsen af dets ressourcer. Ved at aktivere gzip i din .htaccess-fil kan du reducere billedstørrelsen, filstørrelsen og filmængden, mens du sender data til browseren på klientsiden.
Aktivering af gzip er et af de letteste .htaccess-direktiver.
Her er et eksempel:
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
Aktivering af Deflate Option
Nogle webservere understøtter ikke gzip, så webstedet kan løbe ind i fejl. I sådanne tilfælde anbefales det at bruge deflate-indstillingen i .htaccess-filen.
Her er et eksempel:
<IfModule mod_deflate.c>
# Compress text, HTML, JavaScript, CSS, XML
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# The following lines are to avoid bugs with some browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0 no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
BrowserMatch bMSI !no-gzip !gzip-only-text/html
# Do not cache if these files are already cached
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip
# Proxies must give the right content
# Header append Vary User-Agent env=!dont-vary
Header append Vary User-Agent
</IfModule>
Brug af .htaccess til forbedret crawling og indeksering
Du bruger måske allerede robot.txt-filen til at tillade og forhindre søgemaskinerne i at crawle og indeksere dit websted. Det er dog muligt, at du har andre ressourcer end en webside på dit websted. I sådanne tilfælde virker rbot.txt muligvis ikke.
Hvis du ønsker, at nogle få ressourcer som f.eks. et PFD eller et Word-dokument ikke skal indekseres, er den bedste måde at gøre det på ved at oprette et X-robots-tag i din .htaccess-fil.
Den brugerdefinerede header i .htaccess-filen kan fungere med alle indekseringsdirektiver.
Eksempel:
<FilesMatch ".(docx|pdf)$">
Header add X-robots-tag "noindex, noarchive, nosnippet"
</FilesMatch>
I dette tilfælde vil alle filer med .doc- og .pdf-udvidelser blive betragtet som noindex, noarchive, nosnippet.
Konklusion
Næsten alle Apache-servere har en forudindstillet konfigurationsfil. Denne gælder dog for hele webstedet, og derfor er det svært at indstille konfiguration på mappeniveau.
Det er her .htaccess kommer som en velsignelse. Du kan indstille konfiguration på mappe- og undermappeniveau ved hjælp af .htaccess for at tilsidesætte Apachekonfigurationsindstillingerne.
Dertil kommer, at du kan bruge enkle konfigurationskoder til at indstille autentificering. Dette er mere nyttigt, hvis du har en delt hosting med flere websteder.
Fordelene ved .htaccess-filen
- Den læser alle anmodninger
- Omgående ændring uden at genstarte serveren
- Håndterer effektivt brugeradgangen baseret på præferencerne
- Sætter konfigurationen på mappeniveau
- En sand velsignelse for SEO’er
Ulemper ved .htaccess-fil
- .htaccess-filer kan øge sikkerhedsrisikoen ved driften af et websted
- Mindre end konfiguration på serverniveau, da .htaccess-filen søges og læses, hver gang en side indlæses
- Det påvirker hastigheden på et websted, som driver trafik i millioner.
.htaccess-filer anbefales ikke som en metode til serverkonfiguration på grund af sikkerheds- og ydelsesproblemer.