Potrzeba prędkości
Począwszy od lipca 2018 roku, Google uwzględnia czas ładowania stron internetowych na urządzeniach mobilnych do określania pozycji witryn w wynikach wyszukiwania. Nie jest to parametr znaczący, ale obserwując trendy, można dojść do wniosku, że z czasem jego waga będzie rosnąć. Abstrahując od zmian w algorytmach wyszukiwarek, ludzie po prostu nie lubią czekać. Nic zatem dziwnego, że internet przyspiesza.
Przyspiesza także tempo, z jakim projektuje się strony internetowe, szczególnie w segmencie o ograniczonym budżecie. Klienci nie lubią czekać tygodniami na nową stronę, a programiści nie przepadają za wyważaniem otwartych drzwi. Nie dziwi zatem obecność popularnych, otwartoźródłowych systemów zarządzania treścią czy bogactwa bibliotek programistycznych i komercyjnych modułów, które znacząco przyspieszają proces projektowania i wdrażania strony internetowej.
Wspomniane wyżej narzędzia, które w sposób kompleksowy ułatwiają i przyspieszają projektowanie i zarządzanie stronami, mają, rzecz jasna, swoje słabe strony. System zarządzania treścią z reguły potrzebuje coś policzyć, zanim przekaże dane do przeglądarki, która to z kolei potrzebuje pobrać i policzyć różne skrypty, zanim wyświetli użytkownikowi treść. Do tego dochodzą zbyt duże, niezoptymalizowane grafiki oraz nadmiarowy kod, który ładuje się, ponieważ jest częścią całego systemu, choć nie zawsze jest wykorzystywany.
Zanim wpadniesz w panikę, pamiętaj, że istnieją narzędzia oraz techniki pozwalające na optymalizację rozbudowanych stron internetowych, systemów zarządzania treścią, a nawet sposobu, w jaki serwer dostarcza dane do przeglądarki.
Jeżeli korzystasz z CMS WordPress, zapoznaj się z serią moich artykułów na temat LiteSpeed Cache — to darmowe narzędzie, które pozwoli znacząco zoptymalizować niemal dowolną stronę opartą o ten popularny system zarządzania treścią.
W przypadku, kiedy działania lokalne okażą się niewystarczające, albo kiedy Twoja oferta skierowana jest do społeczności międzynarodowej — rozważ uruchomienie Cloudflare — serwisu, na którego temat poświęcony jest ten wpis.
Co to jest Cloudflare i na czym polega innowacyjność tej usługi?
Cloudflare to rozproszona sieć dostarczania treści oraz serwery nazw.
Rozproszona, ponieważ serwery umieszczone są na całym świecie.
Sieć dostarczania treści, czyli wiele serwerów (zamiast jednego), specjalizujących się w dostarczaniu zawartości stron internetowych.
Ponieważ serwery są rozproszone i tworzą sieć, dane mogą być przesyłane z serwera, który geograficznie znajduje się najbliżej użytkownika i do którego dostęp jest najszybszy.
Przykładowo, jeżeli posiadasz usługę hostingową (serwer) w Warszawie, a klient łączy się z Londynu, część zawartości strony zostanie załadowana z serwera w Londynie, a część z serwera w Warszawie (w usłudze CDN nie wszystkie treści można łatwo rozproszyć). Pozwala to znacząco przyspieszyć czas ładowania — szczególnie jeżeli chodzi o treści statyczne takie jak grafiki (zdjęcia) czy nierzadko duże fragmenty kodu JavaScript.
Innowacyjność Cloudflare polega na tym, że jego działanie jest oparte o zarządzanie ruchem na poziomie domeny. Korzystając z Cloudflare, kierujesz swoją domenę na serwery nazw tej usługi — Cloudflare staje się DNSem domeny. Ponieważ cały ruch jest obsługiwany przez serwery Cloudflare, możliwe jest modyfikowanie danych pomiędzy użytkownikiem a serwerem, na którym znajduje się strona.
Pozwala to nie tylko na serwowanie treści statycznych z różnych serwerów, ale także na filtrowanie ruchu (Web Application Firewall, zabezpieczenie anty DDoS, filtry antyspamowe, etc.) oraz modyfikowanie treści zawartych na stronie. Modyfikacje mogą dotyczyć optymalizacji obrazów (dostępne w planie płatnym) oraz kodu HTML, CSS, JS — Cloudflare pozwala na przeprowadzenie minifikacji oraz optymalizacji skryptów, co z kolei przekłada się na mniejszą objętość strony i tym samym lepsze czasy ładowania.
Jakie korzyści daje korzystanie z Cloudflare?
1. Drastyczna redukcja czasów ładowania strony dla odbiorców z zagranicy
Jeżeli kierujesz swoje usługi dla klientów spoza Polski, możliwość ładowania danych z serwerów umieszczonych w innych krajach może znacząco skrócić czas ładowania — w szczególności dla stron bogatych w grafikę (e-commerce, galerie zdjęć, etc.).
Jeżeli Twoja działalność ogranicza się do granic Polski, zysk będzie prawdopodobnie marginalny. W lipcu 2019 Cloudflare posiada tylko jeden węzeł CDN w naszym kraju — w Warszawie.
W takim wypadku zdecydowanie więcej korzyści przyniesie lokalna optymalizacja strony. Jeżeli korzystasz z WordPress, zapoznaj się z moimi artykułami dotyczącymi wtyczki LiteSpeed Cache.
2. Mniej wytransferowanych danych z serwera bazowego
Jeżeli jakimś cudem korzystasz jeszcze z hostingu, który wprowadza limity na transfer danych (dowiedz się, jak wybrać najlepszy hosting dla WordPress), usługa Cloudflare pozwoli zmniejszyć ilość danych pobieranych z serwera, na którym znajduje się strona.
Po prostu osoby odwiedzające Twoją witrynę otrzymają treści z węzła Cloudflare, zamiast z serwera bazowego, więc ten drugi nie będzie musiał wysyłać tak dużej ilości danych dla każdego odbiorcy.
3. Darmowy certyfikat SSL
Dzięki Cloudflare Twoja strona może być serwowana z wykorzystaniem szyfrowania SSL. Po przeniesieniu domeny do tej usługi zostanie wygenerowany darmowy, automatycznie odnawialny certyfikat.
Dowiedz się, dlaczego warto posiadać certyfikat SSL i jakie ma to znaczenie dla szybkości strony, jej bezpieczeństwa, pozycji w Google oraz w procesie budowania zaufania do marki.
Oprócz nadawania certyfikatów SSL Cloudflare oferuje dynamiczne przepisywanie adresów HTTP na HTTPS.
4. Prawdopodobnie najszybsze serwery nazw na świecie
Cloudflare przy różnych okazjach chwali się, że ich serwery nazw są najszybsze na świecie i charakteryzują się najmniejszym czasem reakcji. Serwery te odpowiadają za tłumaczenie nazw domen na adresy IP — stoją więc na pierwszej linii pomiędzy przeglądarką a serwerem docelowym. Tutaj sytuacja jest podobna, jak w przypadku CDN — korzyści będą tym większe, im większy jest zasięg geograficzny Twojej strony.
DNSy Cloudflare pozwalają także na niestandardową konfigurację. Przykładowo, możemy utworzyć rekord CNAME dla głównego węzła domeny, co pozwoli uruchomić tak egzotyczne usługi, jak quic.CLOUD od LiteSpeed.
Propagacja zmian w przypadku Cloudflare jest też bardzo szybka — zwykle wprowadzone zmiany są widoczne już po kilku sekundach. Cloudflare przydaje się zatem nawet chwilowo, do migracji stron między hostingami.
5. Zaawansowana ochrona przed atakami typu Distributed Denial of Service oraz rozbudowany Web Application Firewall
Skuteczna ochrona przed atakami typu DDoS wymaga specjalistycznego oprogramowania i rozbudowanej infrastruktury serwerowej. Cloudflare, nawet w wersji darmowej, zapewnia wysoki poziom ochrony przed atakami, z którymi może nie poradzić sobie twoja firma hostingowa.
Cloudflare udostępnia wszystkim swoim użytkownikom technologię Always Online — umożliwia ona pokazywanie zawartości stron nawet w przypadku awarii serwera źródłowego. To ciekawa opcja na wypadek bezpośredniego atakowania serwerów firmy hostingowej (z pominięciem Cloudflare).
W wersji płatnej Cloudflare oferuje także wysokiej klasy Web Application Firewall, czyli oprogramowanie zabezpieczające systemy zarządzania treścią przed różnego rodzaju atakami. Ma to szczególne znaczenie, jeżeli Twoja strona oparta jest o popularny i chętnie atakowany system zarządzania treścią, taki jak WordPress. WAF od Cloudflare działa z użyciem infrastruktury sieciowej i nie jest uruchomiony na serwerze lokalnym, jak rozwiązania typu Wordfence — oznacza to, że jego wpływ na wydajność jest praktycznie zerowy.
6. Narzędzia typu „plug & play” do optymalizacji stron
Cloudflare posiada panel dedykowany optymalizacji zawartości stron internetowych. Wprawdzie zaawansowane narzędzia, pozwalające np. na zmniejszenie obrazów dostępne są w wersji płatnej, automatyczna minifikacja skryptów oraz technologia Rocket Loader dostępne są już w wersji darmowej.
Jeżeli zależy Ci na jak najkrótszych czasach ładowania strony, warto rozważyć choćby możliwości, jakie daje Rocket Loader — choć nie jest to technologia pozbawiona wad i nie z każdą stroną może działać poprawnie.
Asynchroniczne ładowanie skryptów, które umożliwia Rocket Loader, może nie być pożądane z uwagi na wrażenia z użytkowania strony — elementy strony układające się i zmieniające na oczach użytkownika mogą niepotrzebnie wprowadzić odwiedzających w zakłopotanie.
7. Zaawansowane zarządzanie funkcjami Cloudflare, wykluczenia, filtry
Potrzebujesz wyłączyć optymalizację tylko dla panelu administracyjnego strony lub dla subdomeny? Nie ma problemu.
Potrzebujesz przekierować ruch mobilny na inny adres? Również nie stanowi to wyzwania.
Cloudflare posiada szereg mechanizmów, które pozwalają na zarządzanie routingiem oraz optymalizacją w zależności od zdefiniowanych, własnych reguł.
8. Aplikacje
Ponieważ Cloudflare jest pośrednikiem pomiędzy odbiorcą a serwerem docelowym, możliwe jest dalece idące modyfikowanie kodu źródłowego stron. Umożliwia to np. uruchomienie prostych aplikacji z poziomu Cloudflare, bez użycia systemu zarządzania treścią czy oprogramowania zainstalowanego na serwerze źródłowym.
Aplikacje, które możesz zainstalować w ramach swojej strony to np. narzędzia analityczne, popupy, bannery powitalne, albo proste paski postępu wyświetlane na górze strony podczas jej przewijania.
Narzędzia te są o tyle proste, o ile nie wymagają instalacji dodatkowego oprogramowania na serwerze. Po prostu aktywujemy je dla domeny.
Czy w portfolio aplikacji oferowanych w ramach Cloudflare znajdują się wartościowe pozycje — to już temat na osobny wpis.
Jakie są wady i ryzyko związane z Cloudflare?
Z reguły przekierowanie ruchu na Cloudflare nie wiąże się z dużym ryzykiem. Przed skorzystaniem z usługi warto poinformować o swoich zamiarach firmę hostingową i zapytać, czy niezbędna jest szczególna konfiguracja oraz, czy nie ma przeszkód w uruchomieniu Cloudflare.
1. Pętla przekierowań
W przypadku niepoprawnie skonfigurowanego serwera oraz wykorzystania Flexible SSL możesz napotkać problem związany z wystąpieniem pętli przekierowań. Rozwiązanie jest zazwyczaj proste i wymaga wymuszenia HTTPS po stronie hostingu. Jeżeli wpadłeś w pętlę przekierowań i nie masz dostępu do swojej strony, możesz w panelu Cloudflare wybrać „Pause Cloudflare on Site”, co spowoduje wyłączenie wszystkich usług Cloudflare i przekierowanie ruchu bezpośrednio do Twojego serwera.
Jeżeli nie wiesz, jak poradzić sobie z pętlą przekierowań, poproś o pomoc swój hosting lub rozważ komercyjne wsparcie w uruchomieniu Cloudflare.
2. Zbyt agresywne filtrowanie ruchu
W sporadycznych sytuacjach i rzadkich konfiguracjach (CMS, źródła i częstotliwość odwiedzin, natężenie ataków, etc.) Cloudflare może odfiltrować więcej ruchu do Twojej strony, niż powinien. Oznacza to, że zarówno osoby, jak i roboty indeksujące stronę mogą być od niej odcięte, co może mieć negatywny wpływ na konwersję, a nawet pozycję strony w Google.
Rzecz w tym, że Cloudflare jest naprawdę dobre w tym, co robi, a zasoby, którymi dysponuje, przewyższają o rząd wartości większość popularnych platform hostingowych. Ryzyko jest więc marginalne.
Co więcej, poziomem ochrony można w umiarkowanym zakresie sterować z poziomu zaplecza usługi — jeżeli więc obawiasz się, że Cloudflare zabierze Ci klientów, możesz zmienić ustawienia zabezpieczeń na bardziej liberalne.
3. Jeszcze jedna warstwa
Jeśli Twoja witryna nie charakteryzuje się sporym natężeniem ruchu, nie masz klientów z zagranicy i nie potrzebujesz zaawansowanej ochrony przed spamem oraz atakami, nie ma powodu, aby dodawać dodatkową warstwę w konfiguracji strony.
Pamiętaj, że każde dodatkowe narzędzie i każda dodatkowa warstwa, którą wprowadzasz, oznacza dodatkowe zasoby potrzebne na jej utrzymanie. Nawet przy korzystaniu z darmowej wersji usługi, konieczne jest zabezpieczenie dostępu do panelu administracyjnego oraz poświęcenie czasu na optymalną konfigurację narzędzi dostarczonych z Cloudflare.
4. Wpływ na SEO
Włączenie Cloudflare dla domeny wiąże się ze zmianą adresu IP serwera. Cloudflare ukrywa serwer docelowy witryny ze względów bezpieczeństwa oraz w celu realizowania części swoich usług (zarządzanie ruchem, serwowanie treści, modyfikacja treści „w locie”, etc.).
Podobnie jak w przypadku hostingu współdzielonego, może się zdarzyć, że Twoja domena dostąpi wątpliwego zaszczytu dzielenia IP razem z domenami spamerskimi. W bardzo rzadkich przypadkach może to doprowadzić do spadku widoczności strony w Google, ponieważ algorytmy wyszukiwarki (lub działania manualne pracowników firmy) doprowadzą do zablokowania spamerskiego IP.
Jednak stanowisko Google oraz Cloudflare wyklucza negatywny wpływ usługi na SEO i obydwie firmy utrzymują, że CDN wpływa pozytywnie na dostępność i widoczność stron.
Pamiętaj jednak, że Cloudflare nie jest gwarantem poprawy widoczności strony w wyszukiwarkach internetowych. W dalszym ciągu najważniejszym czynnikiem związanym z popularnością witryny jest jakość publikowanych treści oraz szeroko rozumiane linkowanie (zasięg).
Nawet najszybsza i najlepiej zoptymalizowana strona może nigdy nie wybić się w Google, jeżeli będzie oparta o powtarzalne i nieoryginalne treści, których nikt nie czyta.
Czy Cloudflare pomoże mi z SEO lokalnym (kierowanym do użytkowników z Polski)?
Jeżeli posiadasz dobry hosting z serwerem w Polsce — prawdopodobnie nie. Polska nie jest rozległym geograficznie krajem, a Cloudflare udostępnia tylko jeden węzeł — w Warszawie.
Chyba że z jakiegoś powodu nie możesz wprowadzić optymalizacji technicznych w ramach swojej strony internetowej i tym samym przyspieszyć witryny. W takim wypadku narzędzia optymalizacyjne udostępnione przez Cloudflare mogą okazać się przydatne.
Uruchomienie Cloudflare w tym wypadku może okazać się przydatne również ze względu na możliwość uruchomienia ruchu szyfrowanego — jeżeli nie możesz sobie pozwolić na Let’s Encrypt lub certyfikat komercyjny.
Czy Cloudflare pomoże mi z SEO międzynarodowym?
Prawdopodobnie tak, ze względu na drastyczne zmniejszenie czasów ładowania treści (w niektórych przypadkach nawet w 80%) – szczególnie dla witryn bogatych w media.
To rozwiązanie szczególnie przydatne dla e-commerce o zasięgu międzynarodowym.
Jeżeli posiadasz platformę WooCommerce dla WordPress — nie zapomnij o optymalizacji obrazów lokalnie. Darmowa wersja Cloudflare nie pozwala na zmniejszanie grafik, ale możesz ten proces zautomatyzować za pomocą wtyczki LiteSpeed dla WordPress.
Pamiętaj, że zmniejszone zdjęcia serwowane przez CDN dotrą do użytkowników znacznie szybciej niż niezoptymalizowane oryginały, również serwowane przez CDN.
Podsumowanie
Cloudflare to niewątpliwie ciekawa opcja dla właścicieli stron kierowanych do szerokiej grupy odbiorców, z naciskiem na klientów z zagranicy.
Usługa pozwala zredukować czasy ładowania treści, choć przyspieszenie jest zależne od odległości komputera odbiorcy od serwera źródłowego — im większa odległość, tym więcej zaoszczędzonego czasu w stosunku do połączenia bez CDN.
Warto zdawać sobie z tego sprawę i nie dać się nabrać na magiczne opowieści o olbrzymich wzrostach prędkości oraz poprawie w wynikach wyszukiwania po skonfigurowaniu Cloudflare — szczególnie jeżeli chodzi o lokalne SEO.
Cloudflare nie zastąpi świadomej, manualnej optymalizacji strony, ale może stanowić dodatkową warstwę, dając niewielką przewagę mocno oskryptowanym i bogatym w multimedia serwisom.