LiteSpeed: Przyśpiesz WordPress na Coolify – 100/100 PageSpeed

Cześć! 👋
Jeśli kiedykolwiek zastanawiałeś się, jak sprawić, by Twoja strona WordPress ładowała się błyskawicznie, to jesteś we właściwym miejscu. Wiele osób myśli, że trzeba kupić płatną wtyczkę, np. WP Rocket, a prawda jest taka, że LiteSpeed Cache jest darmowy, zintegrowany bezpośrednio z serwerem LiteSpeed i przy dobrej konfiguracji potrafi bić na głowę płatne rozwiązania.

W tym poradniku pokażę Ci krok po kroku, jak przyśpieszyłem własnego WordPressa działającego na Coolify. Połączymy OpenLiteSpeed, wtyczkę LiteSpeed Cache, uporządkowaną strukturę plików, sensowne logowanie i zoptymalizowaną konfigurację serwera, żeby uzyskać środowisko nie tylko szybkie, ale też stabilne i łatwe w utrzymaniu.

Na końcu będziesz wiedział, jak osiągnąć magiczne 100/100 w PageSpeed, poprawić SEO i przygotować serwer na większy ruch. Zaczynajmy! 🚀

Zrzut ekranu pokazujący wynik 100/100 w narzędziu PageSpeed od Google

Cel jest prosty — 100/100 w PageSpeed (w szczególności mobile) i lepsze SEO. Zaczynamy. 🚀

Masz już WordPress na Coolify?

Świetnie, w tym poradniku nie tworzymy strony WordPress na Coolify od zera.
Jeśli jednak nie skonfigurowałeś jeszcze WordPressa na Coolify to zajrzyj tu: Właściwy sposób instalacji WordPressa i MySQL na Coolify w 2025 – hasto.pl
Tutaj skupiamy się już wyłącznie na optymalizacji. 😉


Zanim zaczniesz!

  • Zrób backup. Zrzut bazy + kopia katalogu WordPressa.
  • Zapisz aktualną konfigurację. Jeśli masz zmapowane wolumeny — skompresuj je przed zmianami.
  • Miej dostęp do SSH na serwer z Coolify. 🙂

1) Porządna struktura katalogów

Załóżmy, że obecnie pliki masz w:

Bash
/var/wordpress-sites/website.com

Docelowo chcemy, żeby WordPress leżał w html/, a OpenLiteSpeed miał osobne katalogi na config i logi:

Bash
/var/wordpress-sites/<YOUR_SITE>/
├── html/        # pliki WordPressa
├── conf/        # konfiguracja OpenLiteSpeed
├── admin-conf/  # konfiguracja panelu OLTS
├── logs/        # logi OLTS

Zatem działamy:

Bash
# 1) Tymczasowe przeniesienie
sudo mkdir -p /var/wordpress-sites/temp
sudo rsync -a /var/wordpress-sites/<YOUR_SITE>/ /var/wordpress-sites/temp/

# 2) Docelowa struktura
sudo mkdir -p /var/wordpress-sites/<YOUR_SITE>/{html,conf,admin-conf,logs}

# 3) WordPress do html/
sudo rsync -a /var/wordpress-sites/temp/ /var/wordpress-sites/<YOUR_SITE>/html/

# 4) Sprzątamy
sudo rm -rf /var/wordpress-sites/temp

Podmień <YOUR_SITE> na swoją domenę, np. website.com. 😉


2) Coolify: stop usługi + domeny

W Coolify otwórz swój resource WordPressa → Stop.
Potem przejdź do Services → Settings i ustaw domeny.

Jeśli masz skonfigurowane przekierowanie z www na bez www, wystarczy:

Bash
https://website.com:80

Jeśli chcesz obsługiwać obie wersje (z www i bez):

Bash
https://website.com:80,https://www.website.com:80

:80 oznacza, że ruch po HTTPS na zewnątrz zostanie przekierowany do portu 80 (HTTP) wewnątrz kontenera z LiteSpeed. Zapisz. ✅

Zrzut ekranu pokazujący dashboard Coolify z konfiguracją resource WordPress+LiteSpeed

3) Zmień obraz na OpenLiteSpeed

Przejdź do Coolify, następnie do twojego resource z WordPressem i kliknij na Configuration → Edit compose file. Podmień zawartość na:

Bash
services:
  wordpress:
    image: 'litespeedtech/openlitespeed:1.8.4-lsphp84'
    volumes:
      - '/var/wordpress-sites/<YOUR_SITE>/html:/var/www/vhosts/localhost/html'
      - '/var/wordpress-sites/<YOUR_SITE>/conf:/usr/local/lsws/conf'
      - '/var/wordpress-sites/<YOUR_SITE>/admin-conf:/usr/local/lsws/admin/conf'
      - '/var/wordpress-sites/<YOUR_SITE>/logs:/usr/local/lsws/logs'
    environment:
      - SERVICE_FQDN_WORDPRESS
    healthcheck:
      test: ['CMD', 'curl', '-f', 'http://127.0.0.1']
      interval: 10s
      timeout: 10s
      retries: 10
    labels:

4) (Opcjonalnie) CrowdSec

Jeśli twardziłeś Coolify zgodnie z moim poradnikiem o CrowdSec, dodaj do serwisu WordPress:

Bash
    labels:
      - coolify.traefik.middlewares=crowdsec@file

Jeśli używasz hCaptcha bouncer — pamiętaj o jego konfiguracji. 🧢

Darmowe bonusowe treści

Chcesz moje dokładne konfigi i ustawienia, żeby wbić 100/100 szybciej i za darmo? Zapisz się do mojego newslettera!
Przygotowałęm specjalną sekcję tylko dla subskrybentów “Coolify OLTS Kit” z poradnikiem aktualizacji, całym httpd_config.conf + docker.conf i moimi przetestowanymi ustawieniami OpenLiteSpeed Cache.
Zasubskrybuj newsletter i odbierz link do bonusowej strony! 🚀


5) .htaccess: szybko i bez bólu

OpenLiteSpeed odczytuje plik.htaccess, ale z pewnymi limitami:

  • Możesz używać reguł takich jak rewrite czy dyrektywy LSCache (CacheEnable, CacheDisable, CacheLookup, E=Cache-Control).
  • Nie możesz włączyć silnika od cache’u globalnie w .htaccess — to się konfiguruje w konfiguracji OLTS.
  • Reguły LSCache muszą znajdować się przed regułami WordPress, w przeciwnym razie po prostu nie zadziałają.

Jeśli twój plik html/.htaccess ma już reguły od innych pluginów (W3TC, WP Super Cache, etc.), usuń je. Najlepiej po prostu zrób kopię html/.htaccess i usuń ten plik — OpenLiteSpeed (wraz z wtyczką LiteSpeed Cache) odtworzy go sam. Dzięki temu unikniesz konfliktów z innymi pluginami cache, starymi wpisami i błędną kolejnością reguł. ✂️


6) HTTPS z Coolify (Traefik), a HTTP w kontenerze

Traefik w Coolify obsługuje HTTPS automatycznie, więc w środku kontenera WordPress/OLTS będziemy rozmawiamy po HTTP.
To oznacza, że wyłączymy HTTPS wewnątrz kontenera OLTS, żeby nie wprowadzać niepotrzebnego zamieszania:🔧

Edit OpenLiteSpeed configs on the host (they’re mapped to your conf/ path):

Bash
# Główny config serwera
sudo nano /var/wordpress-sites/<YOUR_SITE>/conf/httpd_config.conf
  • Na dole zakomentuj/usuń każdy listener na 443.
  • W vhTemplate docker { ... } usuń/wyłącz powiązania HTTPS.

Then:

Bash
# Szablon vhost
sudo nano /var/wordpress-sites/<YOUR_SITE>/conf/templates/docker.conf
  • Zakomentuj całą sekcję vhssl.

Proste — TLS robi Traefik, a OLTS działa po porcie 80. 🔒


7) Naprawiamy potencjalne timeouty pod obciążeniem (LSAPI)

Jeśli w stderr.log widzisz:

Bash
[UID:33][40] Reached max children process limit: 10, extra: 0, current: 10, busy: 10, please increase LSAPI_CHILDREN.

zwiększ liczbę procesów PHP:

Bash
sudo nano /var/wordpress-sites/<YOUR_SITE>/conf/httpd_config.conf

I zaktualizuj ten blok tekstu:

Bash
extProcessor lsphp {
    maxConns                        50
    env                             PHP_LSAPI_CHILDREN=50
}

To zapobiegnie nam błędom 504 podczas zwiększonego ruchu. 🏎️
Polecam zrobić już to prewencyjnie – teraz.


8) Start i szybki sanity check

Wróć do Coolify i Start/Deploy resource.
Jeśli coś nie gra — zerknij w logi OLTS:

Bash
tail -f /var/wordpress-sites/<YOUR_SITE>/logs/error.log
tail -f /var/wordpress-sites/<YOUR_SITE>/logs/stderr.log

Ewentualnie chwilowo włącz debug w WordPress (nie zostawiaj na produkcji):

PHP
// wp-config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', true);
define('SAVEQUERIES', false);

Daj usłudze chwilę i sprawdź stronę. Powinna wstać. ✅


9) WordPress: wtyczka LiteSpeed Cache (LSC)

Zrzut ekranu pokazujący instalację wtyczki LiteSpeed

W panelu WP:

  1. Zainstaluj i aktywuj LiteSpeed Cache.
  2. Preset optymalizacji: Wybierz jeden z listy i sprawdź czy wszystko działa
  3. Połącz z QUIC.cloud — dostaniesz optymalizację obrazów, CSS/JS itp.
  4. Ustaw IP serwera w LSC → General (ważne za reverse proxy).
  5. Skonfiguruj CDN
    • Cloudflare?
      • Wygeneruj token. W Cloudflare → API Tokens użyj szablonu WordPress ze scope na Account i konkretnym Zone.
      • Wklej token w integrację Cloudflare w LiteSpeed, żeby automatycznie purge’ować cache po publikacji.

Ja osobiście polecam preset Advanced jako punkt startowy. Minifikacje (HTML/JS/CSS) i optymalizacje obrazów możesz włączać etapami i testować jak wszystko działa. ⚙️


10) Szybkie strzały do 100/100

  • Wywal zbędne pluginy i ciężkie buildery.
  • Serwuj obrazy w formacie WebP (LSC z QUIC.cloud to ogarnie sam).
  • Wykonuj lazy-load obrazów „below-the-fold”.
  • Wykonaj preload CSS + defer dla JS (LSC).
  • Lekki motyw + mniej zewnętrznych skryptów (piksele, chaty, embedy).
  • Włącz CDN (QUIC.cloud CDN lub Cloudflare). 🌍

11) Rotacja logów (nie pozwól logom zjeść ci dysku)

Logi z OpenLiteSpeed potrafią urosnąć. Dodaj rotację na ~10MB z 5 ostatnimi kopiami:

Bash
sudo nano /etc/logrotate.d/<YOUR_SITE>-litespeed

Wklej:

Plaintext
/var/wordpress-sites/<YOUR_SITE>/logs/localhost.access.log \
/var/wordpress-sites/<YOUR_SITE>/logs/error.log \
/var/wordpress-sites/<YOUR_SITE>/logs/stderr.log \
/var/wordpress-sites/<YOUR_SITE>/logs/lsrestart.log {
  size 10M
  rotate 5
  missingok
  notifempty
  copytruncate
  extension .log
  maxage 14
}

I przetestuj:

Bash
sudo logrotate -f /etc/logrotate.d/<YOUR_SITE>-litespeed

To tyle, dysk pod kontrolą. 🧹


12) Test PageSpeed

Odpal PageSpeed Insights i sprawdź mobile + desktop. Przy poprawnie działającym LSC, QUIC.cloud i rozsądnym motywie 100/100 powinno pojawić się od razu.
Jeśli brakuje paru punktów — zwykle winne są zewnętrzne skrypty (analytics, chat, pixel), brak lazy loadu obrazów lub ciężkie sekcje strony. 📈


Podsumowanie

Przestawiliśmy WordPressa na OpenLiteSpeed, wyczyściliśmy .htaccess, przenieśliśmy HTTPS/TLS na Coolify (Traefik), podkręciliśmy PHP workers i mamy rotację logów.
Do tego skonfigurowaliśmy LiteSpeed Cache + QUIC.cloud.
Efekt? Lekka, szybka i stabilna strona gotowa na wyniki 100/100 w PageSpeed i lepsze CWV.
Teraz wracaj do tworzenia treści — reszta działa w tle. 🙌

Dołącz do newslettera

Subskrybuj po bonusowe treści. Nie przegap nowych artykułów.

    We won’t send you spam. Unsubscribe at any time.

    Zostaw komentarz

    Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

    Przewijanie do góry