Optimalizálja wordpress legtöbb nem rontja el, programozó jegyzetek

Te, persze, tudom, hogy ez a blog is powered by WordPress. Néhány évvel ezelőtt kezdett komolyan aggódni a teljesítményét ez a motor. Először is, Aggódtam a használt memória mennyiségét őket. Például, ha a blog elkezd menni a keresőrobotok. WordPress könnyen enni egy 1 GB RAM. Másodszor, Aggódtam az időpontot, amikor a felhasználó az oldal betöltése. Abban az esetben, cache hit nem probléma, de egyébként a lap könnyen generál 1-2 másodperc.

Optimalizálja a blog a következő lépéseket tettek rám.

Először kapcsolja ki az összes felesleges plugin. Ha a dugó lehet cserélni egy darab kódot a sablon vagy a vonal .htaccess fájlt, cserélje ki. Az én esetemben, ott csak a következő kilenc plug-inek - ez AddQuicktag, CodeColorer, Disqus, Google XML webhelytérképeknél Limit bejelentkezési kísérletek, RusToLat, WP-optimalizálása, WP-PageNavi, WP Super Cache lehetőséget. Szigorúan véve, a legtöbb közülük is lehet megszabadulni, de mint hamarosan látni fogjuk, ez nem szükséges.

Következő. Megnézzük, hogy ha a sablont használja egy tucat CSS vagy JS fájlokat. nehéz képek és TP. CSS fájlok lehetséges, és összekapcsolják a csomagolás, JS átnyomjuk a Google Closure Compiler (az alkalmazást és az online változat). Nézd, én csökken a méret a HTML-kód nem lehet. Például, azt vettem észre, hogy a beosztás megnevezését használtam az alábbi kódot:

header

Azt helyettesítette:

header

... és így egy néhány tucat látogató forgalmat bájt. Továbbá, az oldal mérete is valamivel csökken az alábbi kódot functions.php:

Ezen túlmenően, a kód csökkenti a kapcsolatok száma, amelyek megpróbálják menni a keresőrobotok. Aztán meg a HTTP-fejléceket. Az explicit szemét (ami akkor látható, amikor promohe által cache) találtak bennük:

X-Pingback fűrészelt, mint ez:

funkció remove_pingback_header # 40; $ fejlécek # 41; # 123;
hatástalanított # 40; $ fejlécek # 91; 'X-Pingback' # 93; # 41; ;
return $ fejlécfájljait
# 125;
add_filter # 40; 'Wp_headers'. 'Remove_pingback_header' # 41; ;

És itt van a kód vágására Link:

funkció empty_shortlink # 40; $ Shortlink. $ Id. $ Kontextusban. $ allow_slugs # 41; # 123;
NULL;
# 125;
add_filter # 40; 'Get_shortlink'. 'Empty_shortlink'. 10. 4 # 41; ;

Továbbá, hogy ne megperzsel a PHP verzió (cím X-Powered-By), hogy ezt a php.ini fájlban:

Úgy tűnik, akkor változtatásokat kell újraindítani az Apache. Ugyanakkor megnéztem a listát használt PHP kiterjesztések és Apache modulokat. Ennek eredményeként, a fogyatékkal felesleges elemeket 5 én plugins / kiterjesztéseket.

Úgy tűnik, hogy most már csak a felhasználók egy statikus bypass PHP, de a használt memória mennyiségét, amely nem lassan csökken. Úgy tűnik, a PHP még mindig csinál valamit. Aztán úgy döntött, hogy adjunk index.php az alábbi kódot:

$ FID = fopen # 40; "/path/to/index-php.txt". "A" # 41; ;
fwrite # 40; $ FID.
dátum # 40; "Y-m-d H: i: s" # 41;. "\ T".
$ _SERVER # 91; 'REQUEST_URI' # 93;. "\ T".
$ _SERVER # 91; 'REMOTE_ADDR' # 93;. "\ T".
$ _SERVER # 91; 'HTTP_USER_AGENT' # 93;. "\ N" # 41; ;
fclose # 40; $ fid # 41; ;

Kiderült, hogy a blog megy egy csomó csónak, hogy keresik kopott fórumok, kérheti az oldal / cikk-név helyett / cikk-name /, valamint a nem létező fájl nevek, mint alma-touch-icon.png és így tovább. Mindezek kérelmeket halad cache közvetlenül WordPress. Ennek a problémának, tettem hozzá az alábbi sort a .htaccess:

Mivel néhány látogató jön a blog minden hulladékot a query string típusú utm_source =. Azt is létrehozott egy átirányítást a URL-t, amely néhány érv a kérelmet az URL ugyanaz, csak argumentum nélkül:

RewriteCond%! = ""
RewriteCond%! Codecolorer
RewriteCond% ^ (p | PAGE_ID | előnézet)! =
RewriteCond% ^ / wp- (admin | Bejelentkezés | cron | tartalmaz)!
RewriteRule ^ (. *) $ / $ 1? [R = 301, L]

Különösen a Google robotjai a robots.txt végeztem írás:

Tiltása: * / feed
Tiltása: * / trackback
Tiltása: * / comment

Végül, hogy a látogatók, akik kért egy nem létező oldalt, látta, hogy a normális hibaüzenet hely „404 Not Found», elkezdtem egy speciális oldalt és előírt .htaccess:

Ebben a szakaszban, nyilvánvaló volt, hogy a WordPress nem jön semmilyen extra kérések, a legtöbb esetben, az oldalak általában vett a cache PHP bypass. Kivéve talán az RSS-hírcsatornák WP Super Cache valamilyen okból nem tudnak tárolásra kerülnek. Meg kell jegyezni, hogy a memória mennyisége a szerver ezen a ponton már jelentősen csökkent (ez lebegett mintegy 100-200 MB, a csúcsok akár 300-400 Mb), de nem voltam elégedett az első eredmények.

Meg kellett várni egy ideig, de az eredmény megéri:

Optimalizálja wordpress legtöbb nem rontja el, programozó jegyzetek

Mennyiségének csökkentése memóriahasználat azért jelentkezik, mert a „nehéz» Apache nem foglalkozik az adatok átvitelét az ügyfél helyett ez teszi „könnyű» nginx, emelt helyben. Apache gyorsan dolgoznak ki, ez ad nginx adatokat és kilép. Így, miközben a munka kevesebb Apache folyamatok és a szabad memória maradt.

De milyen gyorsan betöltődik oldalak:

Optimalizálja wordpress legtöbb nem rontja el, programozó jegyzetek

Mondjuk ez nem lassabb, mint a fő oldal betöltésekor Yandex. És mindezt egy nagyon rendes Osztott RU-CENTER. Gyanítom, hogy a lépés, hogy egy dedikált szerver van ahhoz, hogy egy nagyon hosszú idő.

Amellett, hogy a optimalizálások fent leírt, én is kísérleteztek a következő.

Próbáltam A képek és fájlok mind ott Dropbox, hanem egy speciális menteni a memória és átveheti, és nem látni a hátsó, mint volt. Próbáltam tartani a cache gzip'ovannye oldalt, és ad nekik egy űrlapot látogatók (by the way, ez a művelet még mod_gzip-et). Szintén nem látott nyereséget, hogy ugyanaz a tömörítetlen oldalak még mindig meg kell tenni a cache, ha az ügyfél nem támogatja gzip. Elhatároztam, hogy nem osztott hajat és letiltása esetén. Próbáltam kikapcsolni wp-cron WordPress és regisztrálja azt a crontab. Minden tört és nem látni a nyereség, mind vissza. Én is próbálja WP-Kicsinyítse bővítmény, amely optimalizálja a HTML-kód oldalain. Vicces, de az oldalak betöltési ideje csekély hatása van, hanem a termelés mértéke növekszik mintegy 100 ms. Kikapcsoltam és eltávolítjuk.

Még találtam egy remek bővítményt Tényleg statikus, amely képes a statikus weboldalak WordPress. És akkor legalább narod.ru, bár öntsük GitHub. Vagy, hogy kényelmes volt, ő is vegye fel a WordPress aldomain jelszóval korlátozott hozzáférés, valamint a fő domainszolgáltatójánál csak statikus. Desyatitysyasnikom'll biztos, hogy megnézzük, hogy újra, amíg ez lesz zavaró, mint a haszon.

Tehát, ha még mindig úgy gondolja, hogy a WordPress - motorfék? Vagy van az, hogy nem tudom, hogyan kell használni?

Mint a bejegyzést? Oszd meg másokkal:

Kapcsolódó cikkek