Acest tutorial urmează Instalarea programului WordPress în Cloud-ul Amazon, care arată cum să optimizați site-ul cu cache.
Dacă vă găzduiți WordPress, este recomandabil să implementați o soluție de caching. Indiferent dacă doriți să vă difuzați blogul într-o instanță economică micro la Cloud-ul Amazon (AWS) sau vă așteptați ca blogul dvs. să obțină scări semnificative sau spații de trafic, cache-ul va fi critic pentru a gestiona performanța. Caching-ul poate, de asemenea, să vă ajute la îmbunătățirea vitezei dvs. de pagină Google care afectează clasarea motorului dvs. de căutare.
În funcție de traficul site-ului dvs. și de complexitatea temei dvs. WordPress, performanța poate fi de fapt destul de lentă pe AWS. Recomandarea mea este de a combina utilizarea cache-urilor open source cache cu plugin-ul gratuit W3 Total Cache (W3TC).
Lacul este o memorie cache care stochează copii ale paginilor pentru utilizatorii care nu sunt conectați (majoritatea cititorilor nu sunt). Când cererile vin pe serverul dvs., Varnish returnează instantaneu aceste pagini pre-construite, în loc să solicite Apache, PHP și WordPress să reconstruiască pagina pentru fiecare cerere. Ca scale de trafic, reconstruirea fiecărei pagini prin stiva WordPress poate literalmente să vă prăbușească serverul. Mai târziu, W3 Total Cache poate fi configurat pentru a pre-construi în mod regulat paginile site-ului dvs., astfel încât să fie întotdeauna gata pentru Varnish.
Notă: aceasta este, de asemenea, un motiv bun pentru a lua în considerare un plugin de comentarii externe, cum ar fi Disqus, mai degrabă decât built-in comentarii WordPress. Disqus JavaScript este cacheable. Dacă comentatorii dvs. se vor conecta la site-ul dvs. WordPress, cache-ul va fi folosit mai rar și scalabilitatea dvs. pentru cei mai activi vizitatori va fi mult redusă.
Puterea vopselei este dramatică atunci când vă interesează spikele site-ului dvs. Am executat cu succes site-ul meu cu această configurație folosind o instanță mică Amazon pentru aproximativ 14.95 dolari lunar cu succes gestionarea multe apariții pe BoingBoing, Slashdot et al.
Dacă doriți să aflați mai multe despre cache, beneficiile și W3TC, citiți introducerea lui Ahmad Awais în cache.
Lacul Cache este un modul de cache pentru Linux. Vom seta Varnish pentru a asculta traficul HTTP (web) pe portul 80 cu Apache ascultând doar pe Varnish pe portul 8080. Când Varnish are nevoie de o pagină pentru a fi construită manual, aceasta va transmite cererea către portul Apache 8080.
Acest lucru poate fi un pic confuz la început - dar da, suntem, în esență, în mișcare Apache în spatele scenei. Lacul va acționa ca ușa din față a portului 80 pentru toate solicitările dvs. web. Apache va acționa într-un rol de sprijin pentru Varnish pe portul 8080. Nu există trafic public pe portul 8080, doar cererile private de la Varnish. Dacă sunteți curios de modul în care acest lucru se referă la grupurile de securitate AWS, nu este nevoie să deschideți portul 8080.
Pentru a începe, trebuie să instalați Varnish pe instanța noastră:
sudo apt-get instalați lac
Editați fișierul ports.conf al Apache pentru a asculta pe portul 8080:
sudo nano /etc/apache2/ports.conf
Iată cum ar trebui să arate:
Ascultați 8080
Editați fișierul de configurare a site-ului Apache pentru a răspunde la portul 8080:
sudo nano /etc/apache2/sites-available/wordpress.conf
Modificați linia VirtualHost de la *: 80 la *: 8080
Este posibil să trebuiască să modificați site-ul implicit Apache pentru a asculta pe portul 8080 sau să îl dezactivați:
sudo a2dissite 000-implicit
Mutați fișierele originale de configurare a lacului în directorul de acasă ca backup (în cazul în care decideți să le revizuiți mai târziu):
sudo mv / etc / implicit / varnish ~ / default-vernisaj sudo mv /etc/varnish/default.vcl ~ / varnish-default-vcl.old
Înlocuiți configurația implicită a lacului împreună cu fișierul disponibil aici pe bază. Puteți utiliza copierea și lipirea.
sudo nano / etc / implicit / lac
Apoi, înlocuiți configurația VCL VCL cu fișierul de bază aici (din nou copiați și lipiți).
Avertizare: este posibil să primiți erori VCL atunci când încercați să reporniți Varnish dacă nu păstrați corect întreruperile de linii atunci când le lipiți. Pauzele de linie pot fi greu de detectat, deci revizuiți-l cu atenție. Dacă există erori atunci când reporniți Varnish, este destul de bun să vă spun care număr de linie să se uite la.
sudo nano /etc/varnish/default.vcl
Acum, să reluăm Apache și Varnish:
serviciul sudo apache2 reporniți serviciul sudo restart lacuit
Amintiți-vă că, dacă primiți erori VCL în acest moment, poate fi din cauza ruperii liniei întrerupte de la lipirea în fișierul default.vcl al lacului.
Vizitați site-ul dvs. la http://yourdomain.com și totul ar trebui să înceapă să lucreze cu Varnish. A doua oară când încărcați o pagină statică, ar trebui să fie mult mai rapidă.
W3 Total Cache este un plugin WordPress remarcabil. Este gratuit și oferă o optimizare extraordinară a performanței pentru site-ul dvs. Puteți afla mai multe despre W3 Total Cache pe site-ul plugin-ului.
Conectați-vă la pagina de administrare WordPress la http://yourdomain.com/wp-admin utilizând numele de utilizator și parola pe care le-ați configurat în timpul configurării. Selectați Plugin-uri -> Adăugați noi din meniul barei din stânga. Căutați cache total W3.
Datorită puterii și sofisticării sale, W3 Total Cache are o gamă largă de setări care pot părea copleșitoare. Mai jos, vă ofer câteva setări recomandate care fac mai ușoară începerea.
Nu te copleși. Începeți cu setările generale afișate mai jos și mergeți de acolo. Dacă sunteți interesat să începeți mai repede, Am furnizat instrucțiuni pentru descărcarea setărilor implicite și importarea acestora (afișată mai jos).
Alternativ, W3 Total Cache oferă instalare plătită și asistență de la $ 150 și mai mult. Puteți ajunge la ele prin intermediul paginii de tablou de bord a pluginului sau al site-ului web al acestora. Acesta este un plugin extraordinar, așa că mă simt bine în a le recomanda. Am avut o experienta cu sprijinul lor platit si este in general bun. De asemenea, puteți să consultați prezentarea generală a instalării W3 Total Cache și FAQ-ul de pe site-ul pluginului pentru mai multe detalii.
La un nivel înalt, vă recomand să activați următoarele setări, pe care le detaliem mai detaliat mai jos:
sudo apt-get instalare php5-dev php5-memcache memcache php-pec build-esențial php5-tidy php5-curl apache2-dev php-apc
Editați fișierul php.ini pentru a activa memcache:
sudo nano /etc/php5/apache2/php.ini
În secțiunea Extensii dinamice, adăugați liniile de mai jos:
extensie = apc.so extension = memcache.so
Spune-i lui Apache să activeze aceste module și să-l repornească:
sudo a2enmod rescrie sudo a2enmod expira sudo a2enmod anteturi sudo serviciu apache2 restart
Editați fișierul wp-config.php pentru a activa cache-ul:
sudo nano /var/www/wordpress/wp-config.php
Adăugați următoarea definiție WP_CACHE deasupra liniei de editare oprire:
define ('WP_CACHE', adevărat); / * Asta e tot, opriți editarea! Happy blogging. * /
În acest moment, este util să vizitați tabloul de bord al plugin-ului W3TC și să verificați dacă toate componentele corespunzătoare sunt active. Dar, mai întâi, trebuie să activați Fancy Permalinks pentru formatele URL, ceea ce va optimiza site-ul nostru pentru indexarea motoarelor de căutare. Din tabloul de bord al programului WordPress Admin, selectați Setări -> Perioadă, selectați Ziua și numele și faceți clic pe Salvați modificările.
Apoi, din bara laterală din stânga, faceți clic pe Performanță -> Tablou de bord, apoi pe butonul de verificare a compatibilității. Ar trebui să arate ceva de genul:
Notă: puteți salva ceva timp dacă alegeți o temă și instalați celelalte pluginuri pe care intenționați să le utilizați înainte de a finaliza restul procesului de configurare W3 Total Cache. Schimbarea temelor și adăugarea de pluginuri va necesita probabil să eliminați și să retestați setările W3 Total Cache.
W3TC funcționează, în general, cu setările implicite. Deci, va trebui în primul rând să configurați pagina Setări generale și să nu intrați în fiecare zonă de caracteristici.
Vizitați pagina Setări generale W3TC. Din bara laterală din stânga, faceți clic pe Performanță -> Setări generale. Putem efectua un nivel înalt stabilit aici, dar vom face, de asemenea, setări mai detaliate pe paginile de setări individuale. Am lăsat off (neconfirmat) "Togglează toate tipurile de caching pe sau pe (oprit)" în caseta generală.
Activați cache-ul de pagini cu Opcode Alternative PHP Cache (APC):
Activați Minify cu următoarele setări. Folosesc modul manual deoarece minifiia poate sparge anumite teme dacă setările sunt prea agresive (cu toate acestea, tema aleasă poate funcționa bine):
Am lăsat cache-ul de baze de date neefectuat / dezactivat, deoarece acest lucru este recomandat numai dacă nu activați cache-ul de obiecte.
Activați memoria cache a obiectelor:
Activați memoria cache a browserului:
Activați proxy-ul invers:
Configurați W3TC pentru a curăța în mod regulat cache-ul de lacuri de la 127.0.0.1 (localhost).
Din bara laterală din stânga, faceți clic pe Performanță -> Cache de pagină. Derulați în jos până la caseta Preload. Activați funcția "Pregătiți automat cache-ul paginii". Introduceți adresa URL a sitemap-ului dvs..
Notă: Va trebui să aveți instalat Mai bun plugin WordPress Google XML Sitemaps înainte ca aceasta să funcționeze corect.
Dacă utilizați un CAPTCHA pe formularele de contact, veți dori să includeți calea către aceste pagini în excluderea de cache. Caching-ul unei CAPTCHA va întrerupe funcționalitatea. Derulați în jos până la caseta Setare avansată. Adăugați calea fișierului, de ex. contactați aici:
Deoarece tema mea este receptivă, am cache-ul separat de utilizatorii de dispozitive mobile și tabletă. Cu alte cuvinte, Varnish cache copii ale diferitelor aspecte receptive ale site-ului meu. Atunci când un utilizator de telefonie mobilă vine pe site, ei primesc un fișier specific față de când un utilizator de desktop ajunge. Dacă conținutul site-ului dvs. este reactiv dinamic (de exemplu, numai modificările în Javascript și CSS), nu va trebui să faceți acest lucru.
Dacă doriți să faceți acest lucru, activați grupurile de agenți de nivel înalt și inferior:
De asemenea, permit grupurilor de referință pentru motoarele de căutare:
Minify comprimă codul HTML, JS și CSS și combină fișierele atunci când este posibil. Acest lucru accelerează livrarea paginilor dvs. și reduce lățimea de bandă. Cu toate acestea, uneori poate rupe codul temei.
Este posibil să fie necesar să ajustați setările pentru tema aleasă. Am constatat că dezactivând miniaturile CSS inline, tema mea funcționează bine. Din bara laterală din stânga, faceți clic pe Performanță -> Minificare:
Dacă preferați să începeți prin importarea fișierului de setări, urmați acești pași:
Este cu siguranță merită să activați un CDN. CDN este foarte util pentru reducerea încărcării globale pe serverul dvs. De exemplu, W3TC poate redirecționa cererile pentru imagini și fișiere statice, cum ar fi scripturile și css-urile către Amazon's CDN.
Dacă doriți să faceți acest lucru, urmați instrucțiunile de pe site-ul meu pentru activarea cloud-ului Amazon CloudFront. În prezent folosesc metoda Pull (tutorialul meu descrie metoda Push mai veche).
Există multe modalități diferite de a monitoriza performanța serverului dvs. W3TC acceptă integrarea cu modulul de monitorizare New Relic. W3TC oferă un widget de tablou de bord pentru Google Page Speed și există și un plugin Google Page Speed pentru WordPress. Acestea vă vor fi de folos în evaluarea performanțelor în desfășurare ale blogurilor dvs..
Acum ar trebui să fii proprietarul mândru al unui site WordPress complet optimizat, găzduit de noi în Amazon Cloud folosind Varnish și W3 Total Cache. Sper că ați găsit această serie de două părți utile. Spuneți-ne ce a funcționat bine pentru dvs. și ce nu.