DNS RobotDNS Propagation Checker
GłównaDNSWHOISIPSSL
DNS RobotDNS Propagation Checker

Checker propagacji DNS nowej generacji

Polityka PrywatnościRegulaminO nasBlogKontakt

Narzędzia DNS

Wyszukiwanie DNSDomena na IPWyszukiwanie NSWyszukiwanie MXWyszukiwanie CNAMEZobacz wszystko

Narzędzia E-mail

Sprawdzanie Rekordu SPFSprawdzanie DMARCSprawdzanie DKIMTest SMTPAnaliza Nagłówków E-mailZobacz wszystko

Narzędzia Stron WWW

Wyszukiwanie WHOISDostępność DomenyWyszukiwarka SubdomenWykrywanie CMSAnaliza LinkówZobacz wszystko

Narzędzia Sieciowe

Narzędzie PingTracerouteSprawdzanie PortówSprawdzanie Nagłówków HTTPSprawdzanie Certyfikatu SSLZobacz wszystko

Narzędzia IP

Wyszukiwanie IPJaki Jest Mój IPSprawdzanie Czarnej Listy IPIP na HostnameWyszukiwanie ASNZobacz wszystko

Narzędzia Pomocnicze

Skaner QR CodeGenerator QR CodeTłumacz Kodu Morse'aKonwerter Tekstu na BinarnyGenerator Małego TekstuZobacz wszystko
© 2026 DNS Robot. Opracowane przez: ❤ Shaik Brothers
Wszystkie systemy działają
Made with
Home/Blog/Błąd HTTP 503 Service Unavailable: Przyczyny i sposoby naprawy

Błąd HTTP 503 Service Unavailable: Przyczyny i sposoby naprawy

Shaik VahidFeb 26, 20268 min read
Poradnik naprawy błędu HTTP 503 Service Unavailable z ekranem błędu serwera i rozwiązaniami krok po kroku
Poradnik naprawy błędu HTTP 503 Service Unavailable z ekranem błędu serwera i rozwiązaniami krok po kroku

Key Takeaway

Błąd HTTP 503 oznacza, że serwer tymczasowo nie może obsłużyć Twojego żądania — zwykle z powodu przeciążenia, konserwacji lub awarii. Jako odwiedzający poczekaj kilka minut i odśwież stronę. Jako właściciel strony sprawdź zasoby serwera, zrestartuj serwer WWW, wyłącz wadliwe wtyczki i przejrzyj logi błędów, aby znaleźć przyczynę.

Czym jest błąd HTTP 503?

Błąd HTTP 503 (Service Unavailable) to kod statusu po stronie serwera, który oznacza, że serwer WWW tymczasowo nie może przetworzyć Twojego żądania. W odróżnieniu od błędu 404 (strona nie znaleziona) czy 500 (wewnętrzny błąd serwera), kod 503 wskazuje konkretnie na stan tymczasowy — serwer istnieje i jest osiągalny, ale w tej chwili nie może serwować treści.

Zgodnie ze specyfikacją HTTP (RFC 9110) serwer MOŻE dołączyć nagłówek Retry-After, który informuje klienta, jak długo powinien czekać przed ponowną próbą. Ten nagłówek informuje przeglądarki, roboty wyszukiwarek i klientów API, kiedy usługa powinna być ponownie dostępna.

Kluczowe słowo to 'tymczasowy'. Prawidłowo skonfigurowana odpowiedź 503 mówi Google i innym wyszukiwarkom, aby wróciły później, zamiast usuwać stronę z indeksu. Dlatego właśnie strony używają kodu 503 podczas planowanej konserwacji — chroni to pozycje SEO.

Note

Kod 503 to błąd po stronie serwera (klasa 5xx). Oznacza to, że problem leży po stronie serwera, nie po Twojej. Jako odwiedzający zwykle nie ma nic złego z Twoją przeglądarką, urządzeniem ani połączeniem internetowym.

Jak wygląda błąd 503

Niezależnie od treści komunikatu, przyczyna jest zawsze taka sama: serwer otrzymał Twoje żądanie, ale w tej chwili nie może go zrealizować.

  • 503 Service Unavailable

  • 503 Service Temporarily Unavailable

  • HTTP Error 503. The service is unavailable.

  • Error 503 Backend Fetch Failed (pamięć podręczna Varnish)

  • 503 Service Unavailable — No server is available to handle this request (Apache)

  • 503 Service Temporarily Unavailable — nginx (Nginx)

  • Error 503 (Service Unavailable)!! 1 (błąd pochodzenia Cloudflare)

  • Site is temporarily unavailable lub Briefly unavailable for scheduled maintenance (WordPress)

Najczęstsze przyczyny błędu HTTP 503

Zrozumienie przyczyny to najszybsza droga do rozwiązania problemu. Oto najczęstsze powody, dla których serwer zwraca 503, uszeregowane według częstotliwości.

  • Przeciążenie serwera — Serwer osiągnął limit CPU, RAM lub połączeń. Dzieje się tak podczas skoków ruchu, viralowych treści lub gdy boty agresywnie indeksują stronę.

  • Planowana konserwacja — Administrator strony celowo wyłączył serwer na czas aktualizacji, migracji lub wdrożeń. Prawidłowo skonfigurowane strony konserwacyjne zwracają 503 z nagłówkiem Retry-After.

  • Wadliwa wtyczka lub motyw — Na platformach CMS takich jak WordPress, Joomla czy Magento, błędna wtyczka, konflikt z aktualizacją motywu lub niekompatybilna wersja PHP może spowodować awarię aplikacji i wywołać błąd 503.

  • Awaria PHP-FPM lub aplikacji — Menedżer procesów PHP (php-fpm) wyczerpał procesy robocze lub backend aplikacji (Node.js, Python, Ruby) uległ awarii. Serwer WWW (Nginx/Apache) nadal działa, ale nie ma backendu, do którego mógłby przekazać żądania.

  • Przeciążenie bazy danych — Baza danych (MySQL, PostgreSQL) osiągnęła limit połączeń, zabrakło pamięci lub jest zablokowana przez długo trwające zapytanie. Aplikacja nie może pobrać danych i zwraca 503.

  • Atak DDoS — Rozproszony atak typu denial-of-service zasypuje serwer żądaniami, wyczerpując zasoby i powodując, że legalne żądania kończą się błędem 503.

  • Błędna konfiguracja DNS lub CDN — Cloudflare, AWS CloudFront lub inny CDN nie może dotrzeć do serwera źródłowego z powodu zmian DNS, wygasłego SSL lub problemów z białą listą IP.

  • Osiągnięcie limitów zasobów — Plany hostingu współdzielonego mają ścisłe limity CPU, RAM i jednoczesnych połączeń. Przekroczenie tych limitów powoduje, że dostawca hostingu dławi lub blokuje żądania kodem 503.

Rozwiązanie dla odwiedzających: Co możesz zrobić

Jeśli jako odwiedzający widzisz błąd 503 na czyjejś stronie, problem leży po stronie serwera — nie Twojego urządzenia. Jest jednak kilka rzeczy, które możesz spróbować.

  • Poczekaj i odśwież — Ponieważ 503 jest tymczasowy, odczekaj 30-60 sekund i odśwież stronę. Serwer może właśnie się restartować lub kończyć wdrożenie.

  • Sprawdź, czy strona jest niedostępna dla wszystkich — Użyj narzędzia HTTP Headers DNS Robot, aby sprawdzić kod odpowiedzi serwera z zewnętrznego serwera. Jeśli zwraca 503 dla wszystkich, strona faktycznie nie działa.

  • Wyczyść pamięć podręczną przeglądarki — W rzadkich przypadkach przeglądarka mogła zapisać stronę z błędem 503 w pamięci podręcznej. Wyczyść pamięć podręczną i spróbuj ponownie.

  • Wypróbuj inną przeglądarkę lub urządzenie — Wyklucz problemy z pamięcią podręczną lub rozszerzeniami specyficznymi dla przeglądarki.

  • Sprawdź media społecznościowe strony — Witryna mogła opublikować informację o planowanej konserwacji lub znanej awarii na X (Twitter) lub na swojej stronie statusu.

Tip

Użyj narzędzia Port Checker DNS Robot pod adresem /port-checker, aby sprawdzić, czy port 80 (HTTP) i port 443 (HTTPS) serwera WWW przyjmują połączenia. Jeśli porty są zamknięte, prawdopodobnie sam serwer jest wyłączony, nie tylko aplikacja.

Rozwiązanie 1: Zrestartuj serwer WWW

Po restarcie natychmiast przetestuj stronę. Jeśli błąd 503 powróci w ciągu kilku minut, przyczyna nadal istnieje — przejdź do sprawdzania logów i zasobów.

bash
# Restart Nginx
sudo systemctl restart nginx

# Restart Apache
sudo systemctl restart apache2      # Debian/Ubuntu
sudo systemctl restart httpd         # CentOS/RHEL

# Restart PHP-FPM
sudo systemctl restart php8.2-fpm    # Adjust version as needed

# Restart Node.js (PM2)
pm2 restart all

# Restart entire server (last resort)
sudo reboot

Rozwiązanie 2: Sprawdź zasoby serwera (CPU, RAM, dysk)

Jeśli CPU lub RAM przekracza 90%, musisz zoptymalizować aplikację, zabić niekontrolowane procesy lub ulepszyć serwer. Jeśli dysk jest pełny, wyczyść pliki logów, stare kopie zapasowe lub pliki tymczasowe.

bash
# Check CPU and memory usage
top -bn1 | head -20

# Check disk space
df -h

# Check memory in detail
free -m

# Check active connections
ss -s

# Find processes using the most memory
ps aux --sort=-%mem | head -10

# Find processes using the most CPU
ps aux --sort=-%cpu | head -10

Warning

Pełny dysk to cichy zabójca. Gdy /var/log się zapełni lub katalog danych bazy danych wyczerpie miejsce, serwer zacznie zwracać 503 bez żadnego oczywistego komunikatu o błędzie.

Rozwiązanie 3: Sprawdź logi błędów

Typowe wpisy w logach powodujące 503:

"upstream timed out" lub "no live upstreams" (Nginx) — PHP-FPM lub aplikacja backendowa nie odpowiada. Zrestartuj php-fpm lub zwiększ limity czasu.

"server reached pm.max_children" (PHP-FPM) — Wszystkie procesy robocze PHP są zajęte. Zwiększ pm.max_children w konfiguracji puli PHP-FPM.

"Too many connections" (MySQL) — Limit połączeń bazy danych został wyczerpany. Zwiększ max_connections w konfiguracji MySQL lub zoptymalizuj zapytania.

"Cannot allocate memory" — Serwerowi brakuje RAM. Zakończ zbędne procesy lub dodaj przestrzeń swap.

bash
# Nginx error log
tail -50 /var/log/nginx/error.log

# Apache error log
tail -50 /var/log/apache2/error.log      # Debian/Ubuntu
tail -50 /var/log/httpd/error_log         # CentOS/RHEL

# PHP-FPM log
tail -50 /var/log/php8.2-fpm.log

# WordPress debug log (if WP_DEBUG_LOG is enabled)
tail -50 /var/www/html/wp-content/debug.log

# System log
tail -50 /var/log/syslog

Rozwiązanie 4: Wyłącz wtyczki i motywy (WordPress / CMS)

Po zidentyfikowaniu wadliwej wtyczki zaktualizuj ją, zastąp alternatywą lub skontaktuj się z deweloperem. Sprawdź też, czy Twoja wersja PHP jest kompatybilna — niektóre wtyczki przestają działać po aktualizacji PHP na serwerze.

bash
# Disable all plugins by renaming the plugins folder
cd /var/www/html/wp-content
mv plugins plugins_disabled

# If the site loads, rename it back and re-enable plugins one by one
mv plugins_disabled plugins

# To disable a single plugin
mv plugins/problem-plugin plugins/problem-plugin.disabled

Rozwiązanie 5: Zwiększ limity PHP i serwera

Jeśli na serwerze kończą się procesy robocze PHP lub osiąga on limity pamięci, musisz zwiększyć limity w konfiguracji.

bash
# PHP-FPM pool config (e.g., /etc/php/8.2/fpm/pool.d/www.conf)
pm = dynamic
pm.max_children = 50          # Increase from default (5-10)
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
pm.max_requests = 500

# PHP memory limit (php.ini)
memory_limit = 256M           # Increase from default 128M
max_execution_time = 300      # Increase from default 30

# Restart PHP-FPM after changes
sudo systemctl restart php8.2-fpm

Warning

Nie zwiększaj bezrefleksyjnie pm.max_children do bardzo wysokiej wartości. Każdy proces roboczy PHP zużywa RAM (zwykle 20-40 MB). Ustawienie max_children na 100 na serwerze z 2 GB RAM spowoduje, że serwer zacznie korzystać ze swap i stanie się jeszcze wolniejszy.

Rozwiązanie 6: Sprawdź konfigurację DNS i CDN

Aby zdiagnozować problem, użyj narzędzia DNS Lookup DNS Robot, by sprawdzić, czy Twoja domena wskazuje na właściwy IP. Użyj narzędzia HTTP Headers DNS Robot, aby sprawdzić, jaki kod statusu zwraca serwer. Jeśli DNS wskazuje na Cloudflare, ale IP Twojego serwera źródłowego się zmienił, zaktualizuj rekord A w panelu Cloudflare.

  • 503 z brandingiem Cloudflare: Strona błędu ma logo Cloudflare — oznacza to, że centrum danych Cloudflare ma problem (rzadkie).

  • 503 z serwera źródłowego przez Cloudflare: Strona błędu jest prosta lub ma projekt Twojej witryny — oznacza to, że Twój serwer źródłowy zwrócił 503, a Cloudflare go przepuścił.

Rozwiązanie 7: Sprawdź, czy nie ma ataku DDoS lub botów

Jeśli widzisz tysiące żądań z jednego IP lub małego zakresu adresów IP, zablokuj je na poziomie zapory sieciowej. W przypadku ataków DDoS na dużą skalę włącz tryb 'Under Attack Mode' Cloudflare lub skorzystaj z ochrony DDoS swojego dostawcy hostingu. Możesz użyć narzędzia IP Blacklist Checker DNS Robot, aby sprawdzić, czy atakujące adresy IP są już na znanych czarnych listach.

bash
# Count requests per IP in the last 1000 lines
tail -1000 /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -20

# Check requests per second
awk '{print $4}' /var/log/nginx/access.log | cut -d: -f1-3 | uniq -c | sort -rn | head -10

# Block an abusive IP with iptables
sudo iptables -A INPUT -s 1.2.3.4 -j DROP

# Or block with Nginx
# Add to server block: deny 1.2.3.4;

Rozwiązanie 8: Napraw problemy z połączeniem do bazy danych

Jeśli widzisz wiele uśpionych połączeń, Twoja aplikacja nie zamyka prawidłowo połączeń z bazą danych. Jeśli długo trwające zapytania blokują inne, zoptymalizuj te zapytania lub zakończ je, aby odblokować bazę danych.

bash
# Check if MySQL/MariaDB is running
sudo systemctl status mysql

# Restart MySQL
sudo systemctl restart mysql

# Check current connections vs limit
mysql -e "SHOW STATUS LIKE 'Threads_connected';"
mysql -e "SHOW VARIABLES LIKE 'max_connections';"

# Increase max connections (temporary)
mysql -e "SET GLOBAL max_connections = 200;"

# Check for long-running queries
mysql -e "SHOW PROCESSLIST;" | head -20

Rozwiązanie 9: Skontaktuj się z dostawcą hostingu

Jeśli korzystasz z hostingu współdzielonego, zarządzanego hostingu WordPress lub platformy takiej jak Squarespace, Wix czy Shopify, możesz nie mieć dostępu do logów serwera ani możliwości restartowania usług. W takich przypadkach błąd 503 może być spowodowany infrastrukturą dostawcy hostingu.

Skontaktuj się z działem wsparcia swojego dostawcy hostingu i podaj:

  • Dokładny URL, który zwraca 503

  • Kiedy pojawił się błąd — zapisz datę i godzinę

  • Co się zmieniło — czy zainstalowałeś wtyczkę, zaktualizowałeś motyw lub zmieniłeś ustawienia DNS?

  • Czy błąd jest przerywany czy stały — przerywany 503 sugeruje limity zasobów; stały 503 sugeruje awarię lub błędną konfigurację

503 a inne błędy HTTP

Kluczowa różnica: 503 jest jawnie tymczasowy. Dobrze skonfigurowana odpowiedź 503 zawiera nagłówek Retry-After, który informuje klientów, kiedy dokładnie powinni wrócić. Google traktuje 503 inaczej niż 500 — ponowi próbę i zachowa Twoje pozycje w rankingu, jeśli przerwa jest krótka.

Kod błęduNazwaZnaczenieTymczasowy?
500Internal Server ErrorSerwer napotkał nieoczekiwany błąd (bug, awaria, błędna konfiguracja)Być może
502Bad GatewayProxy/load balancer otrzymał nieprawidłową odpowiedź od serwera nadrzędnegoByć może
503Service UnavailableSerwer działa, ale tymczasowo nie może obsłużyć żądań (przeciążenie, konserwacja)Tak
504Gateway TimeoutProxy/load balancer nie otrzymał odpowiedzi od serwera nadrzędnego w wyznaczonym czasieByć może
520-530Błędy CloudflareBłędy specyficzne dla Cloudflare dotyczące problemów z połączeniem do serwera źródłowegoRóżnie

Jak zapobiegać błędom 503

Lepiej zapobiegać niż gasić pożary. Oto najlepsze praktyki, aby unikać błędów 503.

  • Monitoruj zasoby serwera — Ustaw alerty dla CPU > 80%, RAM > 85% i dysku > 90%. Narzędzia takie jak UptimeRobot, Pingdom lub Grafana zapewniają natychmiastowe powiadomienia.

  • Używaj CDN — Cloudflare, Fastly lub AWS CloudFront buforują zasoby statyczne i absorbują skoki ruchu, zmniejszając obciążenie serwera źródłowego.

  • Włącz buforowanie — Używaj Redis, Memcached lub Varnish do buforowania zapytań bazodanowych i wyrenderowanych stron. Użytkownicy WordPress: zainstaluj wtyczkę buforującą, taką jak WP Super Cache lub W3 Total Cache.

  • Automatyczne skalowanie — Jeśli korzystasz z hostingu w chmurze (AWS, GCP, Azure, DigitalOcean), skonfiguruj automatyczne skalowanie, aby dodawać więcej serwerów podczas skoków ruchu.

  • Ogranicz boty — Skonfiguruj Nginx lub Cloudflare, aby ograniczyć prędkość agresywnych robotów i scraperów, zanim przeciążą Twój serwer.

  • Optymalizuj zapytania bazodanowe — Wolne zapytania to przyczyna nr 1 błędów 503 związanych z bazą danych. Dodaj indeksy, optymalizuj złączenia i używaj buforowania zapytań.

  • Używaj odpowiedniej strony konserwacyjnej — Podczas wdrożeń zwracaj 503 z nagłówkiem Retry-After zamiast pozwalać serwerowi się zawiesić. Chroni to SEO i informuje użytkowników.

  • Aktualizuj oprogramowanie — Aktualizuj CMS, wtyczki, PHP i bazę danych do najnowszych stabilnych wersji, aby unikać znanych błędów i luk bezpieczeństwa.

Sprawdź, czy strona zwraca 503

Użyj darmowego narzędzia HTTP Headers DNS Robot, aby sprawdzić kod odpowiedzi HTTP, nagłówki i informacje o serwerze dowolnej strony. Natychmiast zobacz, czy witryna zwraca 503 Service Unavailable.

Try HTTP Headers Checker

Frequently Asked Questions

Błąd HTTP 503 (Service Unavailable) oznacza, że serwer WWW tymczasowo nie może obsłużyć Twojego żądania. Serwer jest osiągalny, ale przeciążony, w trakcie konserwacji lub jego aplikacja backendowa uległa awarii. Jest to stan tymczasowy — strona powinna wrócić do działania sama.

Related Tools

Http HeadersPort CheckerIp Blacklist Checker

Table of Contents

  • Czym jest błąd HTTP 503?
  • Jak wygląda błąd 503
  • Najczęstsze przyczyny błędu HTTP 503
  • Rozwiązanie dla odwiedzających: Co możesz zrobić
  • Rozwiązanie 1: Zrestartuj serwer WWW
  • Rozwiązanie 2: Sprawdź zasoby serwera (CPU, RAM, dysk)
  • Rozwiązanie 3: Sprawdź logi błędów
  • Rozwiązanie 4: Wyłącz wtyczki i motywy (WordPress / CMS)
  • Rozwiązanie 5: Zwiększ limity PHP i serwera
  • Rozwiązanie 6: Sprawdź konfigurację DNS i CDN
  • Rozwiązanie 7: Sprawdź, czy nie ma ataku DDoS lub botów
  • Rozwiązanie 8: Napraw problemy z połączeniem do bazy danych
  • Rozwiązanie 9: Skontaktuj się z dostawcą hostingu
  • 503 a inne błędy HTTP
  • Jak zapobiegać błędom 503
  • FAQ