Przy większości stron korzystam z Cloudflare (jest bezpieczniej, a do tego np. zmiany w rekordach DNS są odzwierciedlane właściwie w czasie rzeczywistym) i polecam to też znajomym. Zwłaszcza że z Cloudflare można korzystać bezpłatnie, a do tego w większości przypadków działa to właściwie bezobsługowo. Zdarzają się jednak sytuacje, gdy może być potrzebna drobna korekta ustawień. Z jednym z takich przypadków spotkał się jeden z naszych czytelników, który zwrócił się do nas z prośbą o pomoc…
Cloudflare, (Universal) SSL i Page Rules
Korzystając z Cloudflare możemy korzystać z połączenia HTTPS/SSL niezależnie od tego, czy mamy na serwerze zainstalowany (i skonfigurowany) certyfikat dla naszej domeny, czy też nie. Jeśli mamy (np. bezpłatny certyfikat Let’s Encrypt) w ustawieniach szyfrowania dla danej domeny w Cloudflare wybieramy „full” lub „full (strict)”. Jeśli nie mamy takiego certyfikatu – wybieramy „flexible”, dzięki czemu połączenie będzie szyfrowane choćby między przeglądarką a serwerami Cloudflare (w uproszczeniu: użytkownik widzi, że połączenie jest szyfrowane, choć jest to pewnego rodzaju obejście).
Wszystko działa bardzo dobrze, do momentu, aż pod jedną domeną nie mamy różnych adresów (subdomen), z których część ma certyfikat (ustawiamy „full”), a część nie ma (ustawiamy „flexible”). Niestety jest to ustawienie „per domena”, a więc jest ono wspólne dla wszystkich subdomen w danej domenie.
I jeśli – tak jak np. u wspomnianego naszego czytelnika – mamy np. ustawiony certyfikat dla domeny (powiedzmy, że będzie to domena webinsider.pl), ale już np. nie dla jakiejś subdomeny (powiedzmy, że będzie to subdomena nossl.webinsider.pl) to w pierwszym przypadku może się zdawać, że mamy problem.
Przy założeniu, że nie chcemy rezygnować z (ochrony) Cloudflare i nie chcemy/nie możemy nic zmieniać w certyfikatach (ustawieniach SSL na serwerze), to jeśli ustawimy typ połączenia (obsługi certyfikatu) na „full”, to będzie działać prawidłowo tylko strona „webinsider.pl”. Jeśli ustawimy „flexible”, to będzie działać tylko strona „nossl.webinsider.pl”. Drugi adres (odpowiednio „webinsider.pl” lub „nossl.webinsider.pl”) może pokazać błąd typu „pętla przekierowań”:
Oczywiście mowa o (wymuszonym) połączeniu SSL, i może to zależeć też od konfiguracji po stronie samego serwera/hostingu. W każdym razie u czytelnika taki problem wystąpił, a ja też się z nim spotkałem już wcześniej, przy okazji konfigurowania subdomeny dla jednej z moich stron. Więc jest to jak najbardziej prawdopodobny problem.
W takim przypadku – gdy nie możemy lub nie chcemy nic zmieniać po stronie serwera/hostingu – można skorzystać z tzw. „zasad stron” (page rules):
Dzięki temu możemy dla wybranego adresu w domenie (czyli np. subdomeny „nossl.webinsider.pl”) ustawić indywidualne ustawienia dotyczące różnych opcji, w tym – to co nas interesuje w kontekście tego artykułu – ustawienia dotyczące certyfikatów SSL. W ten sposób problem czytelnika został rozwiązany, i nawet obyło się bez wystawiania faktury VAT… ;-)
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01