Błąd ERRALPNNEGOTIATION_FAILED oznacza problem z negocjacją protokołu ALPN (Application-Layer Protocol Negotiation) podczas nawiązywania bezpiecznego połączenia HTTPS, szczególnie istotny przy obsłudze HTTP/2 lub HTTP/3. Najczęściej dotyka webmasterów, deweloperów oraz użytkowników końcowych podczas korzystania z nowoczesnych stron internetowych. Poniżej znajdziesz szczegółowe wyjaśnienie przyczyn i praktyczny poradnik naprawczy skierowany osobno do administratorów i użytkowników.
1. Wyjaśnienie błędu ERRALPNNEGOTIATION_FAILED
ALPN to rozszerzenie protokołu TLS, które pozwala klientowi (np. przeglądarce) i serwerowi ustalić, z jakiej wersji protokołu (HTTP/1.1, HTTP/2, HTTP/3) skorzystać przy połączeniu.
Gdy negocjacja się nie uda—for example, gdy jedna strona nie obsługuje wskazanej wersji lub brakuje potrzebnej konfiguracji—przeglądarka zgłasza błąd ERRALPNNEGOTIATION_FAILED.
2. Najczęstsze przyczyny
- Brak wsparcia ALPN po stronie serwera lub klienta (starsze serwery, przestarzałe proxy, nieaktualne przeglądarki, niezaktualizowane systemy operacyjne)
- Nieprawidłowa konfiguracja serwera lub reverse proxy (np. Nginx lub Apache nie mają włączonego ALPN)
- Nieaktualny certyfikat SSL/TLS (np. certyfikaty generowane bez wsparcia ALPN)
- Stara wersja OpenSSL lub brak obsługi TLS 1.2/1.3
- Zapora sieciowa lub oprogramowanie antywirusowe blokujące nowe protokoły
- Problemy po stronie użytkownika – przestarzała przeglądarka lub system
3. Diagnostyka błędu
Aby zidentyfikować przyczynę:
- Sprawdź, czy połączenie HTTPS działa na innych urządzeniach/przeglądarkach
- Przetestuj stronę w analitycznych narzędziach SSL (np. SSL Labs, testy curl z flagą
--http2) - Zbadaj logi serwera (TLS handshake failures, błędy proxy)
4. Instrukcje naprawy dla webmastera/dewelopera
Krok 1 – Sprawdź wsparcie ALPN na serwerze
- Upewnij się, że Twój serwer WWW (np. Nginx, Apache, Caddy) oraz infrastruktura pośrednia (np. Cloudflare, HAProxy) obsługuje ALPN.
- Dla Nginx: Wersja musi być skompilowana z biblioteką OpenSSL wspierającą ALPN (minimum OpenSSL 1.0.2).
nginx -V 2>&1 | grep -- --with-http_v2_module openssl version
Krok 2 – Zaktualizuj środowisko TLS
- Upewnij się, że OpenSSL posiada wsparcie ALPN (wersja 1.0.2 lub nowsza).
- W razie potrzeby zaktualizuj system operacyjny i serwer WWW.
Krok 3 – Zmień konfigurację serwera/proxy
Nginx (przykład) –
listen 443 ssl http2; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on;
Apache (przykład) –
Protocols h2 http/1.1 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
- Sprawdź, czy reverse proxy (np. Cloudflare, HAProxy) nie wyłącza ALPN.
- Skonfiguruj serwer do obsługi HTTP/2 oraz aktualnych protokołów TLS.
Krok 4 – Zaktualizuj lub wygeneruj ponownie certyfikat SSL
- Wygeneruj certyfikat za pomocą narzędzi wspierających ALPN (np. Let’s Encrypt, certbot).
- Sprawdź w narzędziach online, czy certyfikat i serwer wspierają ALPN.
Krok 5 – Przetestuj połączenie
- Sprawdź serwis np. w SSL Labs (ssllabs.com), czy protokół ALPN i HTTP/2 są wylistowane jako wspierane.
- Lokalnie:
curl -v --http2 https://twojadomena.example
- Jeśli połączenie nie działa — weryfikuj logi błędów serwera, ewentualnie przeprowadź debugowanie pakietów (np. Wireshark).
5. Instrukcje naprawy dla użytkownika końcowego
- Zaktualizuj przeglądarkę do najnowszej wersji (Google Chrome, Firefox, Edge, Safari)
- Zaktualizuj system operacyjny
- Wyczyść pamięć podręczną przeglądarki i cookies
- Sprawdź, czy inny komputer lub urządzenie w tej samej sieci także zgłasza błąd (jeśli tylko na Twoim, problem jest po stronie klienta)
- Tymczasowo wyłącz oprogramowanie antywirusowe lub firewall (jeśli pozwalają na to zasady bezpieczeństwa) i sprawdź, czy strona działa
6. Dodatkowe wskazówki
- Jeśli korzystasz z zewnętrznych usług CDN lub reverse proxy (np. Cloudflare), w panelu ustaw protokoły HTTP/2/3 i upewnij się, że ruch do oryginalnego serwera przepływa w trybie „Full (Strict)” z aktywnym ALPN.
- Monitoruj certyfikaty pod kątem wygaśnięcia i kompatybilności z ALPN.
- Uwzględnij, że niektóre tanie lub darmowe certyfikaty mogą pochodzić z generatorów bez wsparcia nowoczesnych rozszerzeń TLS.
7. Najczęstsze pytania i problemy
| Pytanie/Problem | Rozwiązanie |
|---|---|
| Starszy Windows lub przeglądarka nie otwiera strony | Zaktualizuj system/przeglądarkę do wersji wspierającej ALPN, HTTP/2 i TLS 1.2+ |
| Reverse proxy (np. stary Apache/Nginx) | Skonfiguruj do obsługi ALPN, HTTP/2 i TLS 1.2/1.3 |
| Certyfikat SSL wykupiony wiele lat temu | Wygeneruj nowy, korzystając z Let’s Encrypt lub CA wspierającego ALPN |
| Błąd pojawia się tylko na jednym urządzeniu | Zaktualizuj przeglądarkę i system, wyczyść cache, sprawdź antywirus |
Źródła dodatkowe
Podane instrukcje bazują na praktykach z obsługi typowych błędów SSL/TLS pokrewnych do ALPN, takich jak . Zasady naprawy są analogiczne, choć kod błędu może być inny.
Jeśli po wykonaniu powyższych instrukcji błąd nie ustępuje, zgłoś problem do administratora serwera lub usługi hostingowej. To oni zwykle mają pełny dostęp do narzędzi wymaganych do szczegółowej diagnostyki i naprawy konfiguracji ALPN na serwerze.

