# WordPress z CDN dla firm

Jeżeli potrzebujesz budżetowej wersji WordPress'a, skorzystaj z **WordPress Standalone Kit**, gotowej paczki na naszym Marketplace. Zwarta konstrukcja (jeden kontener) sprawia, że ​​rozwiązanie to jest ekonomiczne, ale nadal odpowiednie do prowadzenia projektów komercyjnych. Zestaw wbudowanych narzędzi, które można uruchomić jednym kliknięciem myszy, zapewnia wysoki poziom bezpieczeństwa i wydajności.

Pakiet WordPress Standalone Kit posiada wydajną topologię pojedynczego węzła opartą na certyfikowanym szablonie LLSMP (Linux + LiteSpeed ​​+ MariaDB + PHP) lub LEMP (Linux + NGINX + MariaDB + PHP) z zestawem wbudowanych zaawansowanych funkcji. Przejdźmy przez wszystkie dostępne komponenty.

![](/files/9MMhSm2HmcEmc2WSHcCM)

**Premium CDN** to buforowanie statycznych treści w oparciu o rozproszone bufory lokalne. Na Cloudlets.Zone korzystamy z komercyjnej usługi [EDGEPORT](https://edgeport.net/), dzięki czemu dystrybucja treści realizowana jest w 130 punktach rozmieszczonych na 6 kontynentach. Działanie CDN oparte jest na szybkich sieciach i zaawansowanym buforowaniu zasobów statycznych. Obsługa HTTP/3 zapewnia błyskawiczne ładowanie treści witryn WordPress. CDN Premium rozliczany jest za wygenerowany ruch i obowiązuje jedna cena bez względu na to, na jakim kontynencie obsłużony zostanie ruch.&#x20;

![](/files/EEBy2Fgmf973GLZlUCRr)

**Let's Encrypt**, czyli darmowy SSL dla witryn, e-commerce i aplikacji web. Nasz skrypt wykonuje rutynowe, ale ważne zadania administracyjne związane z wydawaniem zaufanych certyfikatów SSL. Integruje się z serwerem aplikacji i umożliwia w pełni automatyczne odnawianie certyfikatów, co 60 dni.&#x20;

![](/files/Kh3Uj3f5AW43m0A0xubX)

**LiteSpeed ​​Web Server** (LSWS) to wysokowydajny i zużywający niewiele pamięci serwer [WWW](http://WWW). Obejmuje buforowanie ESI, pamięć podręczną przeglądarki i obiektów wraz z obsługą HTTP/3, CDN, WAF, Geo-DNS, ochronę reCAPTCHA, najnowocześniejszą ochronę anty-DDoS. Na Cloudlets.Zone standardowo uruchamiany jest LiteSpeed z licencją [Site Owner](https://www.litespeedtech.com/products/litespeed-web-server/choosing-a-license) (5 domen, 1 proces) w związku z tym LSWS tworzy tylko jeden proces roboczy, ale wiele procesów podrzędnych może być z niego rozwidlonych. Maksymalna liczba jest równa liczbie procesorów w kontenerze.&#x20;

![](/files/H6z8G7qj4tPwWM5oxJig)

**Web Application Firewall** (WAF) to wbudowana funkcja, która jest domyślnie włączona w LiteSpeed ​​Web Server. WAF obsługuje reguły [ModSecurity](https://en.wikipedia.org/wiki/ModSecurity) i jest domyślnie skonfigurowany z zestawem reguł [Comodo](https://waf.comodo.com/). LiteSpeed ​​WAF zarządza regułami dynamicznych żądań, co pozwala znacząco zoptymalizować moc obliczeniową.

![](/files/397g6SWOrwxjJIzlVD3F)

**MariaDB** to dość popularna relacyna baza danych na licencji otwartej wykorzystywana jako magazyn zawartości witryn internetowych. Domyślne wartości parametrów konfiguracyjnych zostały zmienione, aby zapewnić najwyższą możliwą wydajność. Możesz zobaczyć te wartości w pliku konfiguracyjnym [sqldb](https://github.com/jelastic-jps/wordpress/blob/master/wordpress/configs/sqldb/wordpress.cnf).

![](/files/VgEJcd2F4oTwiJH2zZe5)

**Redis** to nierelacyjny system zarządzania bazą danych (DBMS) o wysokiej wydajności. Redis przechowuje dane w pamięci RAM jako pary klucz-wartość. Jest używany jako rozwiązanie do buforowania obiektów. Takie podejście zapewnia wydajność znacznie wyższą niż wydajność relacyjnych DBMS.

![](/files/UuhKV4P1kEmkrDUh5u0n)

Reasumując, choć ta uproszczona architektura WordPress'a to nie klaster wysokiej dostępności (HA) to jednak może skalować się pionowo do **256 cloudletów** (32 GiB RAM, 102,4GHz CPU). Ten pakiet WrodPress dobrze pasuje do witryn o umiarkowanym obciążeniu. Może poradzić sobie z niewielkimi skokami obciążenia dzięki wstępnie skonfigurowanemu [automatycznemu skalowaniu pionowemu](/kompendium/konfiguracja/skalowanie-poziome-i-pionowe.md#automatyczne-skalowanie-pionowe), zapewniając jednocześnie zrównoważone zużycie i minimalne rachunki.

## Instalacja WordPress Standalone Kit

1. Po zalogowaniu do [Panelu Usługi](https://app.controller.cloudlets.zone/) Cloudlets.Zone (jeżeli nie masz konta, [sprawdź jak założyć konto próbne](/kompendium/konto/zakladanie-nowego-konta.md)) uruchom **Marketplace** z górnego menu i wybierz WordPress Standalone Kit z grupy **Zarządzanie treścią**.&#x20;

![](/files/R5f6rYmAMqhrxJNsuej7)

2\. Następnie zaznacz interesujące Cię opcje instalacji i wprowadź nazwę subdomeny tymczasowej oraz określ jak ma nazywać się środowisko w Panelu Usługi.&#x20;

* LiteSpeed Web Server zapewnia najwyższą możliwą szybkość dostarczania treści stron internetowych do klientów za pośrednictwem nowoczesnego protokołu HTTP/3 . Jeśli odznaczysz tę opcję, zamiast LLSMP zostanie użyty stos LEMP (tj. NGINX zamiast LiteSpeed ​​Web Server).
* Brute Force Attack Protection, czyli system ochrony przed atakami techniką łamania haseł polegającą na sprawdzeniu wszystkich możliwych kombinacji. WordPress jest najpopularniejszym CMS i dlatego jest częstym celem tego typu ataków (dostępne tylko z LiteSpeed Web Server).&#x20;
* Web Application Firewall (WAF) włącza/wyłącza korzystanie z darmowych reguł bezpieczeństwa Comodo (działa tylko z LiteSpeed ​​Web Server).
* Let's Encrypt SSL umożliwia wystawienie i używanie zaufanego, bezpłatnego certyfikatu dla niestandardowej domeny. Aby zapobiec wygaśnięciu certyfikatu, system skonfigurowany jest tak aby automatycznie odnawiać SSL co 60 dni. Odpowiednie powiadomienia wysyłane są e-mailem. Jeśli odznaczysz tę opcję, zostanie skonfigurowany wbudowany SSL, który działa tylko dla domeny roboczej naszej platformy (*node.cloudlets.zone).*
* Lightning-Fast Premium CDN (Content Delivery Network) z ponad 130 punktami buforującymi na 6 kontynentach, integruje Edgeport CDN z aplikacją WordPress.
* WordPress Multisite Network to funkcja, która umożliwia wielu witrynom współdzielenie jednej instalacji WordPress. Oznacza to, że instalując WordPress tylko raz, możesz uruchomić tyle witryn, ile chcesz. Zdecydowanie upraszcza to zarządzanie i obniża jego koszt.

![](/files/a92YdUaBdbuA4Sozycw6)

Po wybraniu opcji kliknij przycisk **Instaluj**.

{% hint style="warning" %}
Uwaga! Nie zaleca się używania LiteSpeed ​​Web Admin Console do konfigurowania WAF, ponieważ spowoduje to awarię podczas skalowania poziomego. W przypadku konieczności dostosowania zapory aplikacji sieci Web, po instalacji należy użyć odpowiedniej zmiennej środowiskowej *WAF=TRUE/FALSE*. Pamiętaj też aby zresetować LLSMP po tej zmianie!

<img src="/files/FthOHaqwIfzxqfjev0ha" alt="" data-size="original">
{% endhint %}

3\. Po kilku minutach środowisko zostanie zainstalowane o czym zostaniesz powiadomiony bezpośrednio w Panelu Usługi.

![](/files/KnpcHw7dD7QGDjBqVFJc)

Pocztą elektroniczną zostaną dodatkowe przesłane następujące dane:

* Dane logowania WordPress i URL panelu administracyjnego
* Poświadczenia i URL konsoli LiteSpeed ​​WebAdmin  (na  porcie 4848)
* URL i poświadczenia do phpMyAdmin dla MariaDB (na  porcie 8443)

### Skalowanie WordPress

Dostosowanie środowiska WordPress do obsługi większego ruchu odbywa się za pomocą [automatycznego skalowania pionowego](/kompendium/konfiguracja/skalowanie-poziome-i-pionowe.md#automatyczne-skalowanie-pionowe). Domyślnie, pojemność pojedynczego kontenera to 2 GiB pamięci RAM i 6,4 GHz mocy procesora (czyli 16 cloudletów). Rozkład pamięci RAM na usługi wewnątrz stosu jest następujący:

\--- 50% za serwer aplikacji (LiteSpeed ​​Web Server lub NGINX)&#x20;

\--- 10% dla serwera pamięci podręcznej Redis&#x20;

\--- 40% dla serwera bazy danych MariaDB

W razie potrzeby domyślny limit skalowania można łatwo dostosować za pomocą kreatora topologii.

![](/files/nS7WyJo0rP501Q80KLHZ)

![](/files/o5zxCnrAAUFNETXuaVIA)

{% hint style="warning" %}
Pamiętaj, że Twój węzeł zostanie ponownie uruchomiony, aby zastosować nowy limit skalowania.
{% endhint %}

### Aktualizacje WordPress i stosu LLSMP i LEMP

W miarę upływu czasu może być konieczne zaktualizowanie oprogramowania, zarówno aplikacji, pluginów, tematów i tłumaczeń WordPress, jak i samego stosu LLSMP / LEMP.

1\. W przypadku aplikacji WordPress przejdź do jej panelu administracyjnego. Tutaj przejdź do karty **Kokpit > Aktualizacje**. Jeśli dostępne są jakieś aktualizacje, zobaczysz stronę podobną do następującej:

![](/files/WmLxxyh36JQfFqaPPa1x)

Kliknij przycisk **Aktualizuj teraz**  i postępuj zgodnie z podpowiedziami na ekranie, aby wprowadzić wymagane zmiany.

2\. W przypadku aktualizacji stosu oprogramowania czynność sprowadza się do wywołania ponownego wdrożenia kontenera do wymaganej wersji w Panelu Usługi na Cloudlets.Zone (to działanie prowadzi do krótkiego przestoju).

![](/files/KD5TqnHjeuyZAlH08KaR)

![](/files/qRresILTrVONLBU1OGr9)

{% hint style="info" %}
Dane aplikacji są chronione podczas procesu, a aktualizowane są tylko pliki systemowe kontenera, dlatego nie są wymagane żadne dodatkowe operacje.
{% endhint %}

### Specjalne zmienne środowiskowe

Istnieje kilka zmiennych środowiskowych, których można użyć do zarządzania kontenerem WordPress:

* ADMINPANEL\_ENABLED - zezwala (true, domyślnie) lub zabrania (false) dostępu do konsoli phpMyAdmin dla zintegrowanego serwera bazy danych MariaDB.
* REDIS\_ENABLED - włącza (true, domyślnie) lub wyłącza (false) buforowanie obiektów za pomocą Redis.
* WAF - włącza (true) lub wyłącza (false) zaporę sieciową aplikacji internetowych z domyślnym zestawem reguł Comodo. Dotyczy tylko LiteSpeed ​​Web Server, a jej domyślna wartość zależy od wyboru odpowiedniej opcji podczas instalacji pakietu.&#x20;
* CP\_MEM\_LIMIT - określa część pamięci RAM, która ma być zarezerwowana dla serwera aplikacji (NGINX/LiteSpeed), domyślnie 50% całkowitej pamięci RAM kontenera.
* CACHE\_MEM\_LIMIT - określa część pamięci RAM, która ma być zarezerwowana dla serwera pamięci podręcznej Redis. Domyślnie to 10% całkowitej pamięci RAM kontenera.
* DB\_MEM\_LIMIT - określa część pamięci RAM, która ma być zarezerwowana dla serwera bazy danych MariaDB, domyślnie 40% całkowitej pamięci RAM kontenera.

{% hint style="info" %}
Limity pamięci RAM można określić w megabajtach (m|mb|M|MB), gigabajtach (g|gb|G|GB) lub procentach (%). Jeśli jednostki są pominięte, wartości są traktowane jako procenty.
{% endhint %}

![](/files/N7mSvoWs3OHBZBasrY4w)

![](/files/RkY8l2PTcgOH1Ql4uvmt)

Aby zastosować zmiany, wymagane jest ponowne uruchomienie kontenera.

![](/files/OnPS25NSB713dVu2bSUc)

{% hint style="info" %}
Zaawansowane funkcje, takie jak LiteSpeed ​​Web Server, Premium CDN i Let's Encrypt SSL są dostępne dla kont płatnych.&#x20;
{% endhint %}

### Podłączanie własnej domeny

Przyszedł czas na zastąpienie domeny wygenerowanej przez naszą platformę na domenę docelową powiązaną z marką.

1. Dodaj rekord A lub CNAME do DNS domeny, której chcesz użyć. Do przygotowania niniejszej instrukcji stworzymy subdomenę: *wordpress* w naszej domenie prezentacyjnej: *zaprasza.online* Do obsługi subdomeny wystarczy nam rekord CNAME

```
CNAME | wordpress | wordpress.node.cloudlets.zone
```

W Cloudflare wygląda to tak (koniecznie wyłączony proxy):

![](/files/thWtD5KHcloKWwbsHIBi)

2\.  Po kilku minutach, sprawdź, czy domena odpowiada właściwie np. używając [DNS Checker](#instalacja-wordpress-standalone-kit).

![](/files/VxHjqDoqqariHKdXKdLp)

3\. Teraz już można zmienić ustawienia domeny modyfikując konfigurację SSL. Z poziomu środowiska wybierz **dodatki** oraz **Configure** w rozszerzeniu **Let's Encrypt Free SSL**.&#x20;

![](/files/G5Ib7i8rUiZBgAFUKrqZ)

4\. Wprowadź swoją domenę i subdomenę rozdzielając przecinkami, np. *twojafirma.pl, [www.twojafirma.pl](http://www.twojafirma.pl).*  W naszym przykładzie będzie to tylko: *wordpress.zaprasza.online,* bo z www to już za długie :smile: Zatwierdź zmianę i poczekaj na wygenerowanie nowego certyfikatu SSL.

![](/files/C5skK1qW2kOaiTIrXqvS)

{% hint style="info" %}
Ta czynność spowoduje, że nasz skrypt automatycznie podmieni wpisy domen w aplikacji WordPress.&#x20;
{% endhint %}

<figure><img src="/files/UHS4NxSH6kWE1hdp1BiY" alt=""><figcaption></figcaption></figure>

{% embed url="<https://cloudlets.zone/rejestracja/?utm_campaign=jitsi&utm_medium=kompendium&utm_source=kompendium>" %}

## Włączanie i konfiguracja CDN

Gdy masz podłączoną domenę możesz powiązać punkt końcowy CDN z własną witryną. Można to zrobić na dwa różne sposoby, w zależności od tego, jaki serwer aplikacji wybrałeś na etapie instalacji WordPressa.

### Konfiguracja CDN dla WordPress na LiteSpeed

Konfiguracja sprowadza się właściwie do weryfikacji ustawień, gdyż system powinien zainstalować i aktywować wtyczkę oraz dokonać parametryzacji automatycznie.

1. Zaczniemy od sprawdzenia, czy wtyczka LiteSpeed Cache jest zainstalowana i aktywna.

![](/files/e6vORgozi5pj2IakotCd)

2\. Sprawdzamy także, czy pamięć podręczna jest włączona.

![](/files/L9oggdYuNp4oz6yZArND)

3\. Na koniec weryfikujemy konfigurację CDN. W naszym przykładzie mamy **CDN URL** zgodny z tym, który otrzymaliśmy w mailu po uruchomieniu środowiska: [*https://WordPress-chmur.cdn.jelastic.net/*](#instalacja-wordpress-standalone-kit) i **Oryginalny URL** zgodny z nazwą własnej domeny w formacie: *//wordpress.zaprasza.online/*

![](/files/Ojr3WfF1GtwL3Ypbbypt)

![](/files/Wu9kYRSehTzNqN7aVpKh)

W przypadku, gdy potrzebne będą jakieś modyfikacje, pamiętaj by zatwierdzić je u dołu strony klikając przycisk **Zapisz zmiany**. Zrobione!

### Konfiguracja CDN dla WordPress na NGINX

W przypadku serwera NGINX wtyczką do obsługi buforowania i CDN w WordPress jest W3 Total Cache.&#x20;

1. Zaloguj się do WordPress i sprawdź, czy wtyczka W3 Total Cach jest zainstalowana i aktywna.

![](/files/lzES3C5py2zsOO84kto8)

2\. Wejdź w ustawienia wtyczki - **Performance** > **General settings** i włącz CDN (*Enable*), a z listy *CDN Type* wybierz: *Verizon Digital Media Services (Edgecast)* i zapisz wszystkie ustawienia (Save all settings).

![](/files/3r5Lt3n0Sq8bNZ4GNdyi)

3\. Następnie z menu wtyczki W3 Total Cache wybieramy **CDN** i wpisujemy w pole "**Replace site's hostnames with**" adres domeny CDN Endpoint URL, który otrzymaliśmy pocztą elektroniczną i zapisujemy zmiany.

![](/files/bEnLp2JxMD2Nig7wb34x)

Gratulacje, zrobione!

<figure><img src="/files/UHS4NxSH6kWE1hdp1BiY" alt=""><figcaption></figcaption></figure>

{% embed url="<https://cloudlets.zone/rejestracja/?utm_campaign=jitsi&utm_medium=kompendium&utm_source=kompendium>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kompendium.cloudlets.zone/kompendium/aplikacje/wordpress-z-cdn-dla-firm.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
