Optymalizacja WordPress’a – pamiętaj o favikonce!

Swego czasu napisałem artykuł Jak zoptymalizować WordPress’a, w którym opisałem jakie pluginy warto zainstalować, i co dodać do .htaccess, aby przyśpieszyć działanie WordPress’a. Od tamtego czasu dowiedziałem się kilku nowych rzeczy na ten temat, dlatego zdecydowałem się zarówno na aktualizację tamtego wpisu, jak i dodanie nowego.

W starym wpisie uaktualniłem reguły do dodania do .htaccess, aby jeszcze lepiej móc wykorzystać możliwości kompresji pobieranych plików oraz ich cache’owanie po stronie klienta. Dodałem też informację o tym, że plugin DB Cache nadal nie został zaktualizowany, i dlatego samemu zdecydowałem się to zrobić – efektem moich starań jest plugin DB Cache Reloaded.

To jednak nie wszystko. Przeglądając tickety wystawiane do WordPress’a, znalazłem w jednym z nich ciekawą notkę (źródło):

I can say the lack of a favicon.ico causes the CPU usage of a site to jump by 400%. This is really pretty insane.

Jeżeli nie wiesz o co chodzi, już tłumaczę – brak pliku favicon.ico powoduje że obciążenie procesora na serwerze jest o 400% wyższe niż gdy ten plik jest wgrany! Z tego też powodu w WordPress 3.0 na początku został dodany kawałek kodu, który jest odpowiedzialny za wysłanie pustego pliku gdy ktoś nie ma wgranego pliku favicon.ico.

Ten sam problem był też poruszany tutaj i tutaj. Z lektury tych wszystkich wpisów wynika, że najlepiej mieć wgrane na serwerze komplet trzech plików: favicon.ico, favicon.gif oraz robots.txt. Pliki te powinny być wgrane w systemie plików, a nie generowane dynamicznie – dzięki temu można znacznie zmniejszyć obciążenie procesora. Najczęściej pobierany jest plik favicon.ico – w porównaniu do robots.txt jest to jak 4:1. Warto też pamiętać że niektóre przeglądarki (czyżby IE? ;)) zawsze próbują pobierać plik o nazwie favicon.ico z głównego katalogu serwera (np. costam.pl/favicon.ico), niezależnie co jest wpisane w kodzie HTML. Czasami trafiają się też pobrania pliku favicon.gif, dlatego warto go też wgrać (przynajmniej pusty plik o takiej nazwie).

Dodam jeszcze że domyślnie WordPress dynamicznie generuje plik robots.txt z następującą zawartością:

User-agent: *
Disallow:

Te dwie linie można by spokojnie wyrzucić. Czasami jednak w tym generowanym pliku jest coś innego. Pierwsza możliwość to gdy blog jest ustawiony jako prywatny – wtedy WP używa zamiast powyższego reguły do blokowania botów. Druga możliwość to linia Sitemap: cośtam , dodana przez plugin do generowania mapy strony. Poza tym inne pluginy mogły jeszcze dodać coś ekstra, np. reguły do blokowania botów czy blokowanie indeksacji wybranych katalogów.

Podsumowując: pamiętaj o wgraniu na serwer, do katalogu głównego, pliku favicon.ico – dzięki temu obciążenie procesora może sporo spaść (ok. 75% w przypadku WordPress’a, dla innych CMS’ów też powinna to być ładna liczba). Drugim plikiem który powinieneś mieć jest robots.txt – w tym przypadku sprawdź wcześniej czy coś jest generowane przez CMS’a, i skopiuj wygenerowane reguły. Wgraj też plik favicon.gif – też się może przydać.

This entry was posted on niedziela, Luty 21st, 2010 at 15:28 and is filed under Skrypty. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

25 komentarzy do “Optymalizacja WordPress’a – pamiętaj o favikonce!”

  1. procek Says:

    Rozważania związane z favikonką trochę mijają się z prawdą… Obciążenie serwera może być spowodowane wyłącznie tym, że klient wysyła żądanie pobrania favicon.ico, a serwer go szuka. Nic nie może się tam dziać bez naszej kontroli i tak:
    wgranie favicon do głównego folderu w WordPressie to akurat głupota, bo jest to wystrój strony i miejsce na niego znajduje się w templatce. Pamiętajmy, że serwer generuje to co mu każemy, więc jeśli w kodzie mamy:

    A pliku takiego brak to jest to wyłącznie nasza wina i zaniedbanie! Inną sprawą jest to, że Joomla czy Drupal już dawno miały standardową favikonę, do której można było linkować w każdej templatce w ciemno.

    Nie czarujmy się – problemy takie powstają, jak ktoś chce koniecznie zaufać gotowym rozwiązaniom, a nie do końca rozumie ich funkcjonowanie.

  2. SirZooro Says:

    Nie do końca się z tym zgadzam. Owszem taką ikonkę warto mieć – nie tylko ze względów wydajnościowych, ale też aby się odróżnić od innych stron. Obecnie to w pewnym sensie standard, chociaż też wiele stron się bez tego obywa.

    Co do miejsca umieszczenia pliku z ikonką – to zależy. Ja tam osobiście wolę wrzucić ją do katalogu głównego, tak aby nawet zmieniając templatkę bloga mieć nadal tą samą ikonkę. Chociaż to podejście może być dyskusyjne, równie dobrze można przecież zmieniać ikonkę przy okazji zmian wyglądu strony, albo nawet bez tego (np. Google zmieniało już parę razy ikonkę bez zmiany wyglądu stron).

    Do kodu strony warto też oczywiście dodać linię wskazującą położenie pliku z ikoną – obecnie chyba wszystkie liczące się przeglądarki potrafią ją odczytać. Jeżeli jej jednak nie będzie, przeglądarki będą próbować wczytać plik /favicon.ico.

  3. gdaq Says:

    To ciekawe nie wiedziałem, że to aż takie obciążenie.
    Tak czy siak favicon warto mieć na pewno nie zaszkodzi :)

  4. Futerał Says:

    Witajcie.
    W sumie to nie wiedziałem o tym, nie bardzo też rozumiem zasady działania serwerów i dlaczego brak ikonki powoduje obciążenie dlatego że on go szuka i nie może znaleźć? W każdym razie tak czy siak zawsze warto tą ikonkę zrobić, raz że odróżnia strony, a dwa – bardzo ułatwia znalezienie w zakładkach.
    Pozdrawiam
    Futerał

  5. Developer Says:

    Istnieje fajny serwis do tworzenia favicon, http://www.favicon.cc mozna wgrac fotosa i na stronie go obrobic do favicon.

  6. Filip Zieliński Says:

    Hm… Ciekawej rzeczy się dowiedziałem z powyższego, dla mnie zawsze favicon był czymś, co pomagało odróżnić stronę na pasku przeglądarki, ale nie wpadłbym na to, że wpływa to na zużycie zasobów serwera…

  7. sp4m Says:

    Na stronie favicon.cc jest fajny generatorek takich miniatur i całkiem szybko można np. rozrysować logo.

  8. Trevor Says:

    Favicon’ka jest częścią „brandingu strony”, jest to malutki obrazek, który dużo pomaga. Do każdej z moich stron dodaje favicon i wyglądają dzięki temu bardziej profesjonalnie. Mogę również szybciej odnaleźć stronę w mojej zakładce Ulubione.

  9. Marcin Says:

    A ja nigdy w wp nie stosowałem favikony i teraz od kiedy zapodałem ikonę to faktycznie mniej mi cpu zużywa ale nie o 75% tylko 15-20% :)

  10. Websik Says:

    Aktualnie optymalizuje pewnego WordPressa i postanowiłem w końcu spisać sobie cały proces optymalizacji WP, ponieważ na pewno przyda się nie raz, do listy dopisuję też favicona, dzięki.

  11. Lms Says:

    Wow do głowy by mi nie przyszło, nie wierzę wręcz.. zabieram się za wgranie favicona! :)

  12. felgis Says:

    Bardzo ciekawy wpis. Nie zastanawiałem się do tej pory nad techniczną stroną wordpress’a. Zainstalowałem i wszystko ma chodzić, a dzięki tym artykułom dodam kilka ulepszeń. Pozdro

  13. Kaszub Says:

    Racja, parę rzeczy na blogu wciąż pozostaje do poprawienia :)

  14. P@SH@ Says:

    Korzystanie z favicon stronie wygląda lepiej. I dla mojej strony się nie favicon. Nic nie jest trudne, nawet w wielu usług internetowych dla produkcji favicon

  15. altavis Says:

    Ciekawy jest aspekt wydajnościowy, faktycznie może mieć to znaczenie. Polecam więcej o favikonach pod kątem graficznym: http://www.altavis.pl/blog/favicon-czyli-ikona-z-paska-adresu

  16. Marcin Says:

    Dzięki, nie miałem tego favicon a może się przydać ;)

  17. Łukasz Says:

    Kto by pomyślał, że taki mały ‚myk’ może tyle dobrego wnieść. Dzięki za info

  18. Krystian Says:

    Ja nigdy się nie przejmowałem tym czy favicon jest wgrany czy nie a jakoś nigdy nie miałem problemów z nadmiernym obciążeniem serwera. Od jakiegoś czasu zawsze dodaję favicony do swoich serwisów, ale jest to zabieg raczej marketingowy (strona jest lepiej zapamiętywana i wygląda na bardziej profesjonalną) niż wydajnościowy.

  19. Darek Jasiński Says:

    Głupi favicon, a obciąża aż o 400% Nigdy bym się nie spodziewał. Jednak WP dąży do autodestrukcji. Wystarczy przesadzić z wtyczkami i możemy mieć straszne zamulenie.

  20. Mariusz Says:

    To czy, rzeczywiście tak jest to trudno powiedzieć, opinii jest kilka. W każdym bądź razie zawsze warto zwrócić na to uwagę i dokonać stosownych kroków zmierzających do zoptymalizowania WP. Dziękuję za info ;)

  21. mamonia38 Says:

    Ciekawy artykuł,nie wiedziałam że warto wgrywać plik favicon.gif.

  22. Hipnotyzer Says:

    Ja wiem tylko jedno, że wtyczki mogą obciążyć stronę i procesor serwera do tego stopnia, że ci od hostingu zablokowali mi kiedyś konto na shared, bo przesadziłem z linkami, ale favicona?!

  23. Marek The Tester Says:

    Warto jeszcze ustawić tym plikom czas siedzenia w cache – na długoo.

    Btw. wrócisz na bloga?

  24. Mateusz Kozak Says:

    Skoro favicon tak obciąża to po co go pakować? Ja na to specjalnie uwagi nie zwracam.

  25. sylwestrus Says:

    Bardzo dobre rady dla kazdego WOrdpressowca:)Zdziwilo mnie to z ta favicona bo sam jej nie mialem :)

 

Dodaj komentarz

Zanim dodasz komentarz, zapoznaj się z zasadami korzystania z serwisu i polityką prywatności! Komentarze niezgodne z zasadami korzystania z serwisu będę usuwane.

Proszę pozostawić te dwa pola tak jak są: