Webbplatshastigheten spelar mycket roll för varje blogg / hemsida, särskilt för personer med delad hosting - vilket är den billigaste tillgängliga webbtjänsten. Här är några .htaccess och header.php tricks för att öka din hemsida laddningshastighet med 50-70%
Webbprestanda blir allt mer uppmärksamhet från webbutvecklare och är en av de hetaste ämnena i webbutveckling. Först och främst är lasthastighet mer än en funktion. Hastighet är den viktigaste funktionen. Om din webbplats eller blogg är långsam, kommer folk inte att använda den.
Vilken hastighet betyder för internetgiganter:
Google, i sin pågående satsning på att göra webben snabbare, bloggade att "vi har bestämt oss för att ta hänsyn till webbplatshastigheten i våra sökrankningar."
Så en långsammare webbplats kommer även att minska din sökmotor ranking också.
Således belastar lasthastigheten mycket. CDN (Content Delivery System) är ganska bra för detta ändamål, men i begränsad utsträckning, och bra CDN-leverantörer är lite kostsamma.
Den goda nyheten är att några av de viktigaste hastighetsoptimeringarna enkelt kan utföras med enkla .htaccess tricks. Dessa kan göra att någon webbplats laddas snabbare genom att komprimera innehåll och möjliggöra webbläsarens caching och följa de bästa metoderna för att påskynda din webbplats från Yahoo! S exceptionella prestationslag och kostar inte en cent.
Komprimering minskar svarstiderna genom att minska storleken på HTTP-svaret.
Det är värt att gzipa dina HTML-dokument, skript och stylesheets. I själva verket är det värt att komprimera ett textsvar inklusive XML och JSON.
Bild- och PDF-filer ska inte gzipped eftersom de redan är komprimerade. Försöker att gzip dem inte bara avfall CPU men kan potentiellt öka filstorlekar.
Filkomprimering sparar också en viss mängd bandbredd.
För Apache-servrar
mod_pagespeed
är en Apache-modul som utvecklats av Google och dess kommandoradirektiv kan användas precis som andra moduler.
För närvarande stöder bara GoDaddy och DreamHost mod_pagespeed
modul, så om du är värd med dem, kopiera och klistra in följande kod till din .htaccess fil:
ModPagespeed på # med kommandon, filter mm
Många av er kanske värd med andra webbhotell som inte stöder mod_pagespeed
modul.
Du kan använda mod_deflate
modulen (Apache 1.3x används mod_gzip
men sedan Apache 2x mod_deflate
är använd)
AddOutputFilterByType DEFLATE text / html text / plain text / xml ansökan / xml application / xhtml + xml text / css text / javascript ansökan / javascript application / x-javascript
För Nginx-servrar
Om du är värd på en Nginx webbserver kopiera följande till din .htaccess för att aktivera gzip-komprimering.
server gzip on; gzip_types text / html text / css application / x-javascript text / vanlig text / xml bild / x-icon;
Om din server inte stöder mod_deflate
eller mod_gzip
du kan använda detta PHP-skript för gzip-komprimering som fungerar på både Apache och Nginx
Kopiera bara detta till ditt tema header.php
Nedan är stapeldiagrammet som visar min webbplatss lasthastighet utan och med gzip-komprimering.
ETags (Entity Tags) är en mekanism som webbservrar och webbläsare använder för att avgöra om komponenten i webbläsarens cache matchar den ursprungliga servern. Etags läggs till för att tillhandahålla en mekanism för att validera enheter som är mer flexibla än datumet för senaste ändring. En ETag är en sträng som unikt identifierar en specifik version av en komponent. Begränsningarna av detta format är att strängen är citerad. Ursprungsservern anger komponentens ETag med hjälp av ETag-svarhuvudet.
För att inaktivera ETags, klistra in det här i din .htaccess fil
Header avstängt ETag FileETag None
Med webbläsarkachning instruerar vi explicit webbläsare att hänga på specifika filer under en viss tidsperiod. När filen behövs igen ska webbläsaren dra från sin lokala cache istället för att begära den från servern igen.
Att köra en webbplats utan att cache på plats ger så mycket mening att du kör till butiken för ett glas vatten varje gång du är törstig. Det är inte bara opraktiskt och kortsiktigt, det tar mer arbete!
Browserkachning är verkligen användbar för att få återvändande användare; dvs det kan bygga lojala, permanenta besökare åt dig och sparar också mycket av din bandbredd.
En första gången besökare på din sida kommer att göra flera HTTP-förfrågningar för att ladda ner alla dina webbplatsens filer, men med hjälp av rubrikerna Expires och Cache-Control gör du de här filerna cacheable. Detta undviker onödiga HTTP-förfrågningar på efterföljande sidvisningar.
För Apache-servrar
Apache möjliggör genom mod_expires
och mod_headers
moduler.
De mod_expires
modulen styr inställningen för HTTP-header Expires och det högsta åldersdirektivet för HTTP-huvudet i Cache-Control i serverns svar. För att ändra Cache-Control-direktiven annat än maximal ålder kan du använda mod_headers
modul.
De mod_headers
modulen ger riktlinjer för att styra och modifiera HTTP-förfrågan och svarhuvuden. Headers kan slås samman, ersättas eller tas bort.
Lägg till dessa regler i .htaccess för inställning Utgår rubriker:
# BEGIN Expire headersExpiresByType image / jpeg "access plus 2592000 sekunder" ExpiresByType image / png "access plus 2592000 sekunder" ExpiresByType image / gif "access plus 2592000 sekunder ExpiresByType bild / x-ikonet" access plus 2592000 sekunder " ExpiresByType-applikation / x-shockwave-flash "access plus 2592000 sekunder" ExpiresByType text / css "access plus 604800 sekunder" ExpiresByType text / javascript "access plus 216000 sekunder" ExpiresByType applikation / javascript "access plus 216000 sekunder" ExpiresByType application / javascript "access plus 216000 sekunder" ExpiresByType text / html "access plus 600 sekunder" ExpiresByType application / xhtml + xml "access plus 600 seconds" # END Utgå rubriker
.htaccess regler för inställning av cache-control header:
# BEGIN Cache-Control Headers# END Cache-Control Headers Header-uppsättning Cache-Control "public" Header-uppsättning Cache-Control "public" Header set Cache-Control "privat" Header-uppsättning Cache-Control "privat, måste-revalidera"
Notera:
max-ålder
Direktivet med Cache-Control-rubriken eftersom det redan är inställt av mod_expires
modul.måste-återge giltighet
betyder att när ett svar blir gammalt måste det förnyas det betyder inte att det måste kontrolleras varje gång.För NGINX-servrar
Korresponderande .htaccess Inställningarna i Nginx skulle se något ut så här:
(Exemplet nedan skulle berätta för dina besökares webbläsare att hänga på HTML, CSS, Javascript, bilder och favicon i en timme)
plats ~ * \. (jpg | png | gif | jpeg | css | js) $ utgår 1h;
Sedan WordPress 2.6, skickar WordPress automatiskt inlägg under skrivning som förblir även efter att posten sparas som revision i MySQL-databasen. Större databas skickar också platsens laddningstid högre. Jag föreslår att du tar bort revisionsfunktionen.
Klistra in följande till wp-config.php att inaktivera revisioner:
definiera ('WP_POST_REVISIONS', false);
Om du väljer att behålla revisionsfunktionen på dig kan du också välja att hålla revisionerna i databasen under ett visst antal dagar, t.ex. 10 dagar.
Spåra hur din webbplats gör på: visa att ladda upp antal frågor och tid.
Klistra in följande kod efter upphovsrättstexten i ditt tema footer.php:
frågor i sekunder.
Vet du eller använder någon annan metod för att optimera laddningstiden för din blogg / hemsida? Glöm inte att dela dem genom att kommentera.