Dziś kontynuacja wątku związanego jednocześnie z szybkością stron i ich bezpieczeństwem. Pytanie: czy słyszałeś kiedykolwiek o czymś takim jak statyczna strona WordPress? Jeśli nie, albo słyszałeś, ale temat nie specjalnie Cię wówczas zainteresował dziś kilka zdań na ten temat. Zacznijmy jednak od podstaw.

Jak działa statyczna strona WordPress

WordPress to przede wszystkim skrypty PHP i komunikacja z bazą danych, gdzie przechowywane są wszystkie najważniejsze informacje związane z wtyczkami, konfiguracjami, wszystkie treści jakie publikujesz itd. Co to oznacza dla każdej strony WordPress?

W momencie gdy wywoływane jest zapytanie z przeglądarki, serwer na którym działa Twoja strona wykonuje niezliczone ilości operacji. Przede wszystkim uruchamiane są procesy PHP, które w kolejnym kroku proszą serwer baz danych o podanie odpowiednich informacji potrzebnych do budowy wywoływanej strony. Gdy te dane są otrzymywane skrypty tworzą wersję strony, która jest akceptowana przez przeglądarki czyli kod HTML. To dzięki niemu przeglądarka wie co ma dalej robić, jakie żądania ma wysyłać, jakie skrypty JS ma wykonywać, jakie arkusze styli pobrać i jak to wszystko razem poukładać w całość.

Gdy chwilę się zastanowić, to widać, że sporo pracy trzeba wykonać, żeby strona wyświetliła się w przeglądarce. Te wszystkie procesy mogą trwać dłużej lub krócej, co zależy od mocy hostingu (dlatego polecam Hosting WordPress), jak również od tego jaki mamy sprzęt. Czy nasza przeglądarka szybciej przetworzy dane czy będzie łapała zadyszkę. To także ma wpływ na to jak szybko zobaczysz stronę internetową.

Co byś powiedział gdybyśmy zadania, które leżą po stronie serwera mocno zredukowali eliminując procesy PHP i zapytania kierowane do bazy danych? Zredukowalibyśmy je do samego procesu związanego z otrzymanym zapytaniem o stronę i szybkiej odpowiedzi. Właśnie w taki sposób działają strony statyczne.

Strony statyczne

Gdy zaczynałem swoją przygodę ze stronami jakieś 27 lat temu nie było takich narzędzi jak dziś, a o WordPressie nawet ptaszki nie ćwierkały. WordPress miał pojawić się dopiero za 9 lat.

Moje pierwsze strony to realizacje które powstawały w oparciu o sam HTML. Zwykły notatnik i pisanie linijki za linijką, potem było nieco łatwiej, pojawił się Pajączek 🙂 Myślę, że niektórzy Czytelnicy mogą go pamiętać i uronić teraz łezkę 🙂

Tworzyłem strony HTML. Nie było żadnych skryptów PHP, zresztą ten język dopiero się chodził po głowie jego twórcom.

Jak wyglądała struktura plików? Główna strona to plik o nazwie index.html, podstrony kolejno kontakt.html, oferta.html itd… Wszystkie były oczywiście statyczne.

Gdy padało zapytanie do serwera o stronę główną odpowiadał on plikiem index.html i nie musiał się specjalnie trudzić, bo jego jedynym zadaniem było przekazać do przeglądarki już gotowy plik.

Później pojawił się bum na strony dynamiczne i coraz więcej języków programowania. Ten trend wciąż trwa i z pewnością będzie się dalej umacniał. Natomiast niektórzy użytkownicy WordPressa i innych systemów CMS marzą o tym, żeby strony działały możliwie najszybciej. Wykorzystywane są wtyczki cache lub takie narzędzia jak NitroPack. Sam go używam na Jak Zrobić Stronę.

Powstają też wtyczki dla WordPressa, które pozwalają eksportować to,co zrobiliśmy do statycznych plików HTML i w ten oto sposób zbliżamy się do sedna dzisiejszego wpisu 🙂

Co dają strony statyczne

Przede wszystkim eliminują znaczącą, tą najcięższą część pracy po stronie serwera. To najważniejsza korzyść płynąca ze stosowania takich stron. Mniej obciążają Twoje konto i szybciej są wysyłane przez serwer do przeglądarki. Drugą, niejako przy okazji jest wzrost bezpieczeństwa. Skoro nie ma procesów PHP, to żeby się włamać haker musiałby poznać Twoje hasło do hostingu i wtedy rzeczywiście może nabroić (używaj silnych haseł!). Jeśli hasła nie ma, to w zasadzie nic nie zrobi. Nie wykorzysta dziury we wtyczkach bo ich nie ma, nie dostanie się do baz danych, bo jej również nie ma. Jest tylko statyczny HTML, który nie będzie w żaden sposób reagował na jakiekolwiek próby wstrzyknięcia złego kodu, ataki bruteforce próbujące łamać hasła do WordPressa itd. Fajnie prawda?

Wtyczka Simply Static Pro

Przy jej pomocy możesz wyeksportować swoją stronę do wersji statycznej, zajmuje to dosłownie kilka, kilkanaście sekund w zależności od wielkości witryny. Potem albo wykorzystujesz przesył na Github i konfigurujesz akcję przesłania plików na dowolne konto hostingowe po SFTP, albo pobierasz wygenerowaną paczkę z plikami strony i wrzucasz je do właściwego katalogu na koncie hostingowym.

Jak wtyczka działa

Przede wszystkim musisz mieć instalację WordPressa gdzieś na boku. Ja wykorzystuję aplikację Local. Budujesz stronę standardowo jak to w WordPressie. Instalujesz wtyczkę Simply Static PRO (jest też wersja darmowa, ale odradzam z uwagi na ograniczone możliwości), przechodzisz w menu do sekcji generowania plików statycznych:

Przejście do sekcji generowania strony statycznej

Klikasz w przycisk GENERATE… jak na poniższym zrzucie:

Statyczna strona WordPress jest generowana w ciągu kilku sekund.

Pojawiają się logi związane z operacją, a na końcu zobaczysz link do pobrania paczki z plikami. To wszystko bez zabawy w ustawienia, których jest tu nieco więcej. Domyślna instalacja i domyślna konfiguracja wtyczki. Działa 🙂

Co dalej? Teraz trzeba przejść na konto hostingowe. Jeśli masz na nim managera plików, możesz błyskawicznie przesłać archiwum zip i rozpakować je w głównym katalogu strony. Jeśli nie, użyj klienta FTP i to wszystko 🙂

Teraz jeśli otworzysz właściwy adres strony zobaczysz ją, ale będzie to już strona statyczna. Zapewne od razu poczujesz różnicę w jej szybkości 🙂

Jeśli chcesz sprawdzić jak działa taka strona, to przygotowałem prosty przykład. Kliknij w poniższy przycisk i przyjrzyj się jak strona się zachowuje. Na WordPressie lokalnie miałem motyw Astra. Zaimportowałem przykład strony startowej i tylko zmieniłem kilka zdań. Potem generowanie plików statycznych i wrzucenie ich na serwer. Oto efekt:

Podsumowanie

To świetne rozwiązanie jeśli chcesz uruchomić stronę szybką i odporną na ataki, a chcesz to zrobić w WordPressie. Niestety są pewne ograniczenia, bo np. uruchomienie sklepu WooCommerce raczej odpada, chyba że będziesz się komunikował ze sklepem uruchomionym pod innym adresem, ale to już wymaga większej ilości pracy. Są jednak rozwiązania e-commerce, które można dość prosto zintegrować z taką statyczną stroną. Pewnie jeszcze o tym napiszę.

Jeśli prowadzisz stronę firmy z blogiem lub bez albo sam blog, to rozwiązanie może być dla Ciebie bardzo korzystne. Przetestuj na razie chociaż wersję bezpłatną z repozytorium WordPress, ale tak jak napisałem polecam Ci wersję PRO, ponieważ da Ci większe możliwości jak chociażby obsługę formularzy, możliwość eksportu na GitHub i dalej na swój hosting, co może być zautomatyzowane i nie będzie Cię specjalnie angażować.

Udostępnij

Zobacz również

Dynamiczne treści WordPress

WordPress i dynamiczne treści

Przed uruchomieniem strony decydujesz się na WordPressa, ale okazuje się, że Twój pomysł nie do końca jest typowy. Stajesz przed ścianą. Zastanawiasz się jak rozbić

Bezpłatne informacje o nowościach JZS

Zapraszam Cię do grona Subskrybentów! Tysiące Czytelników już subskrybuje wiadomości z JZS.

W każdej chwili możesz zrezygnować z subskrypcji. Twój adres jest tu bezpieczny.

Polecane Oferty LifeTime!

AppMySite

Stwórz natywną aplikację mobilną dla swojego sklepu WooCommerce

Meta Box Lifetime
Meta Box

Dodawaj własne rodzaje treści, pola i taksonomie do WordPressa.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *