Raskere nettsteder – htaccess-konfigurering

by admin on October 30, 2010 · 0 comments

Google legger nå vekt på hvor raskt en nettside laster. Sider som laster sent får en lavere ranking i søkemotorene enn sider som laster hurtig. Dette, sammen med det faktum at brukerne stort sett ikke liker nettsider som laster sent, burde være god grunn til å legge vekt på å få nettsider til å laste så kjapt som mulig.

Det er en lang rekke faktorer som bestemmer hvor raskt en side laster. Så mange at det er viktig å prioritere riktig når en setter i gang å jobbe med å øke hastigheten. Selve serverens hastighet er selvsagt en sentral faktor. Den skal vi se nærmere på i et senere innlegg.

En liten fil som heter ”.htaccess” og ligger i root-directoriet på serveren er kanskje det du bør gjøre noe med aller først og prioritere på topp. Denne lille filen kan brukes til å styre en lang rekke ting på serveren. Fra et hastighetsperspektiv er den viktig fordi den kan brukes til å sende filer til brukernes browsere i komprimert format – som gzip-filer – og fordi den kan stilles inn slik at sentrale filer på nettstedet lastes og oppbevares i browsernes deres – de blir cachet. Begge disse tingene påvirker hastigheten, men på litt forskjellige måter.

Komprimering

Komprimering av filer gjør at filene serveren sender over nettet til brukernes browsere blir mindre. Størrelsen kan reduseres med opptil tre fjerdedeler. Dermed kan mer sendes på kortere tid til browseren og websiden din laster raskere. Mange webhotell støtter imidlertid ikke komprimering fordi det øker CPU-bruken på serveren.

Det er to alternative kommandoer i ”.htaccess”-filen som kan brukes til dette formålet. På en Apache-server kan files se slik ut:

# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

Eventuelt, om metoden ovenfor ikke støttes på serveren din, kan du bruke:

<IfModule mod_deflate.c>
<FilesMatch "\.(js|css)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>

Du kan lese mer om “.htaccess”-filer om komprimering hos BetterExplained og AskApache.

For å sjekke om komprimeringen fungerer kan du bruke GIDZipTest – en online tjeneste for dette.

Sette cache i .htaccess

Når du setter headere som gjør at en del filer lagres midlertidig i brukerens browser øker du ikke hastigheten på siden din i for seg. Det du gjør er å sørge for at en del ting blir lagret slik at siden lagrer raskere neste gang brukeren besøker siden. Om du bruker CSS, javascripts eller bilder på flere sider på siten din, vil også neste side laste raskere enn den første siden brukeren besøker, fordi en del av elementene i siden allerede ligger lagret på brukerens PC.

Caching av filer i brukernes browsere gjøres med kommandoen ”Header set”:

<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
</FilesMatch>

“Header set” støttes av de aller fleste Web-hotell fordi det reduserer belastningen på serverparkens båndbredde. Om du bruker Yslow fra Yahoo og sjekker siden din, vil du se at den nå bruker en brøkdel av båndbredden og dermed også laster mye raskere gang nummer to.

Hva med din server?

Problemet er at ikke alle Webhotell (Web hosting sites) gir deg tilgang til komprimering av filer. Spesielt gjelder dette dersom du bruker de rimeligste formene for Web hosting. På min site får jeg for eksempel ikke bruke ”Deflate”, så jeg må nøye meg med at sette Expires headers på filene mine.

For å finne ut hva som støttes på din server kan du sende en email til support, chatte med support om det er en mulighet, eller rett og slett prøve deg frem.

Hvordan sette opp en ”.htaccess”-fil på serveren?

Det er ikke spesielt vanskelig. Alle kan gjøre det. Omtrent slik:

  1. Skriv filen med notepad eller et annet program som lar deg lagre filer i rent tekst-format.
  2. Lagre filen som ”.htaccess” uten filtype (dvs. ikke ”.htaccess.txt” eller liknende)
  3. Bruk et FTP-program (Dreamweaver, Filezilla, eller liknende) og last filen opp i root-directory for nettstedet ditt
  4. Sjekk om nettstedet fungerer som vanlig – om ingenting kommer opp på skjermen, betyr ikke det at noe katastrofalt har skjedd, men antakelig bare at du har lagt inn en kommando i filen som serveren ikke støtter. Når jeg legger inn komprimering i min ”.htaccess”-fil på denne serveren, skjer for eksempel det. Da er det bare å endre ”.htaccess”-filen, laste den opp igjen og prøve på nytt.

Når alt fungerer og siden din er synlig, kan du sjekke om komprimeringen fungerer (dersom du har lykkes å legge inn det) og om ”cache”-ing funger ved å bruke tjenestene jeg har linket til ovenfor.

Lykke til!

Leave a Comment