Przejdź do treści

Ustawienia plików cookie

Prosimy wybrać, na które rodzaje plików cookie Państwo zezwalają. Wybór można zmienić w dowolnym momencie w Ustawieniach plików cookie na dole każdej strony. Polityka prywatności

Niezbędne

Zawsze włączone

Potrzebne do logowania, zachowania koszyka i zapamiętania wyborów. Są zawsze włączone.

Jakie pliki cookie?
  • weboke_sessie, weboke_klant, weboke_remember: sesja i pozostanie zalogowanym
  • weboke_basket: koszyk
  • wkBtwIncl: wyświetlanie cen z VAT lub bez VAT
  • wok_cookies: wybór dotyczący plików cookie, 12 miesięcy

Mierzą, która reklama prowadzi do odwiedzin lub zamówienia, abyśmy nie płacili za reklamy, które nic nie dają.

Jakie pliki cookie?
  • Google Ads przez Google Tag Manager (_gcl_au, _gcl_aw), do 90 dni
  • OpenAI Ads, reklamy w ChatGPT
  • wok_aff: przez którego partnera trafili Państwo do nas (program partnerski), 60 dni

4,6

Kraj i język

Każdy kraj ma własną stronę z cenami i stawką VAT tego kraju.

Wyświetl

Https i certyfikat

Moduł 3: Adres, https i użytkownicy · Czas czytania: 8 minut

Cel lekcji: Po tej lekcji będą Państwo potrafili w pełni przełączyć stronę WordPress na https oraz będą wiedzieć, do czego służą adres WordPress i adres strony.

Kluczowe pojęcia: TLS, certyfikat, Let's Encrypt, automatyczne odnawianie, adres WordPress (siteurl), adres strony (home), WP_HOME i WP_SITEURL, HSTS, zablokowanie dostępu do panelu

Co robi https

Dzięki https wszystko pomiędzy przeglądarką a serwerem jest szyfrowane: hasła, formularze, pliki cookie, a nawet zwykłe strony. Bez https każdy w tej samej sieci (publiczne wifi, przejęty router) może podsłuchiwać, a nawet zmieniać zawartość strony. Przeglądarki oznaczają stronę bez https jako „niezabezpieczoną”, a niektóre funkcje (np. lokalizacja czy kamera) działają wyłącznie przy użyciu https.

Szyfrowanie nosi nazwę TLS. Aby udowodnić, że przeglądarka faktycznie komunikuje się z example.com, a nie z pośrednikiem, serwer posiada certyfikat: cyfrowy dowód podpisany przez wystawcę, któremu przeglądarki ufają. Certyfikat zawiera nazwy, dla których jest ważny, oraz datę ważności.

Bezpłatne certyfikaty i odnawianie

Let's Encrypt wydaje bezpłatne certyfikaty. Niemal każdy dostawca hostingu zamawia je automatycznie i automatycznie je odnawia. Certyfikat Let's Encrypt jest obecnie ważny przez 90 dni, a Let's Encrypt zapowiedziało stopniowe skrócenie tego okresu do 45 dni. Ręczne odnawianie nie wchodzi więc w grę: musi odbywać się automatycznie.

Płatny certyfikat nie szyfruje lepiej. Różnica polega na dodatkowej weryfikacji organizacji (a czasem na gwarancji). Dla większości stron bezpłatny certyfikat w zupełności wystarczy.

Na co zwrócić uwagę:

  • Certyfikat musi obejmować każdą nazwę, którą może wpisać odwiedzający: example.com oraz www.example.com. Również nazwę, która jedynie przekierowuje, ponieważ przeglądarka sprawdza certyfikat jeszcze przed przekierowaniem.
  • Automatyczne odnawianie działa tylko wtedy, gdy DNS wskazuje na Państwa serwer. Jeśli przenieśli Państwo DNS lub skonfigurowali przed nim serwer proxy (np. Cloudflare), proszę sprawdzić, czy odnawianie nadal działa.
  • Rekord CAA w DNS może określać, którzy wystawcy mogą wydawać certyfikaty. Jeśli nie ma w nim Let's Encrypt, zamówienie certyfikatu się nie powiedzie (kurs DNS, lekcja 5.2).

Dwa adresy w WordPressie

W sekcji Ustawienia > Ogólne znajdują się dwa adresy. Wyglądają na zbędnie zdublowane, ale oznaczają coś innego:

PoleW bazie danychZnaczenie
Adres WordPress (URL)siteurlGdzie znajdują się pliki WordPressa (wp-admin, wp-includes)
Adres strony (URL)homeAdres, którego używają odwiedzający

Zazwyczaj są one takie same, na przykład oba https://example.com. Różnią się jedynie wtedy, gdy WordPress znajduje się w podkatalogu, a strona ma być widoczna w katalogu głównym.

Na podstawie tych adresów WordPress tworzy wszystkie odnośniki: do stron, arkuszy stylów, obrazów, panelu administracyjnego. Jeśli widnieje tu http://, WordPress buduje strony z odnośnikami http://, nawet jeśli odwiedzający wchodzi przez https. Prowadzi to do treści mieszanych (lekcja 3.2) i przekierowań w tę i z powrotem.

Przełączenie strony na https

Jeśli mają Państwo już istniejącą stronę na http, oto kroki:

  1. Zamówić certyfikat dla obu nazw i sprawdzić, czy https://example.com działa (powinni Państwo zobaczyć stronę WordPress, być może jeszcze bez formatowania).
  2. Wykonać kopię zapasową (lekcja 8.1).
  3. Ustawić oba adresy w Ustawienia > Ogólne na https:// i zapisać. Nastąpi wylogowanie; proszę zalogować się ponownie przez https.
  4. Zamienić stare odnośniki w treści z http://example.com na https://example.com. Proszę zrobić to za pomocą narzędzia, które rozumie dane zserializowane, takiego jak wp search-replace lub wtyczka do wyszukiwania i zamiany (lekcja 3.2), nigdy za pomocą zwykłego polecenia SQL.
  5. Przekierowanie: niech serwer WWW przekierowuje wszystkie żądania na http za pomocą kodu 301 do https (lekcja 3.2). Wielu dostawców hostingu ma do tego odpowiednią opcję; w innym przypadku wystarczy kilka linii w pliku .htaccess.
  6. Sprawdzić za pomocą zadania z tej lekcji oraz z lekcji 3.2.

Zablokowany dostęp: gdy adres jest błędny

Jeśli przy wpisywaniu adresów popełnią Państwo literówkę (htps://, błędna domena), WordPress po zapisaniu przekieruje Państwa na ten błędny adres. Nie będą Państwo mogli już dostać się do panelu administracyjnego. Bez paniki, istnieją dwa wyjścia:

Przez wp-config.php. Proszę umieścić nad linią „to wszystko, zaprzestań edycji”:

define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

Te linie mają pierwszeństwo przed wartościami w bazie danych. Pola w Ustawienia > Ogólne staną się wtedy wyszarzone. Proszę się zalogować, ustawić poprawne wartości w bazie danych i ponownie usunąć te linie (albo celowo je pozostawić, wtedy nikt nie będzie mógł przypadkowo zmienić adresów przez panel administracyjny).

Przez phpMyAdmin. Proszę otworzyć tabelę wp_options i poprawić wartości siteurl oraz home.

HSTS: aby przeglądarka zapamiętała

Za pomocą nagłówka HSTS (Strict-Transport-Security) serwer informuje przeglądarkę: „przez pewien czas odwiedzaj tę stronę wyłącznie przez https”. Przeglądarka sama zamienia później każde http:// na https://, bez wysyłania najpierw niezabezpieczonego żądania.

Strict-Transport-Security: max-age=31536000; includeSubDomains

HSTS to dobry dodatkowy krok, ale z zastrzeżeniem: przeglądarka, która już widziała HSTS, odmówi później otwarcia strony bez ważnego certyfikatu, nawet przy wyborze opcji „mimo to kontynuuj”. Z opcją includeSubDomains dotyczy to każdej subdomeny. Jeśli mają Państwo subdomenę bez certyfikatu (na przykład stary system wewnętrzny), stanie się ona po włączeniu HSTS niedostępna. Dlatego warto zacząć od krótkiego czasu max-age (na przykład jeden dzień, 86400), wszystko sprawdzić, a dopiero potem go wydłużyć.

W praktyce: jak to wygląda w panelu

Jako przykład posłużymy się DirectAdmin. W cPanel ta funkcja nazywa się SSL/TLS Status (AutoSSL), a w Plesk SSL/TLS Certificates.

  1. Proszę otworzyć Certyfikaty SSL przy swojej domenie i wybrać Darmowy i automatyczny certyfikat od Let's Encrypt.
  2. Zaznaczyć example.com oraz www.example.com i zamówić certyfikat.
  3. W ustawieniach domeny zaznaczyć opcję zawsze kierowania odwiedzających na https (w DirectAdmin: Wymuś SSL z przekierowaniem https). Proszę używać tylko jednego sposobu przekierowania: dwa różne naraz mogą spowodować pętlę przekierowań („zbyt wiele przekierowań”).
  4. W WordPressie proszę przejść do Ustawienia > Ogólne i ustawić oba adresy na https://.

Podsumowanie

  • Https szyfruje wszystko pomiędzy przeglądarką a serwerem; certyfikat potwierdza tożsamość serwera.
  • Bezpłatne certyfikaty Let's Encrypt są ważne krótko i odnawiane automatycznie; muszą obejmować każdą nazwę, którą wpisuje odwiedzający.
  • Adres WordPress (siteurl) oraz adres strony (home) muszą być ustawione na https://.
  • Jeśli stracą Państwo dostęp do panelu z powodu błędnego adresu, można go przywrócić za pomocą WP_HOME i WP_SITEURL w pliku wp-config.php lub w phpMyAdmin.
  • HSTS to dobry dodatkowy krok; warto zacząć od krótkiego czasu ważności.

Quiz

1. Państwa strona działa na https, ale w Ustawienia > Ogólne oba adresy nadal są ustawione na http://. Co się stanie?



2. Przez pomyłkę zapisali Państwo literówkę w adresie strony i nie mogą już wejść do panelu administracyjnego. Co pomoże?



3. Dlaczego certyfikat musi obejmować również www.example.com, jeśli ta nazwa jedynie przekierowuje do example.com?



4. Jakie jest ryzyko związane z HSTS przy długim czasie max-age i opcji includeSubDomains?



Zadanie

Zadanie A3.1: Czy Państwa certyfikat jest poprawny? Proszę podać adres swojej strony. Program nawiąże połączenie TLS zarówno z nazwą bez www, jak i z www (jeśli taka istnieje) i sprawdzi: czy certyfikat jest ważny i zaufany, czy obejmuje obie nazwy, czy jest ważny dłużej niż 14 dni oraz czy strona wysyła nagłówek HSTS. Brak HSTS zostanie oznaczony na pomarańczowo z wyjaśnieniem, nie jako błąd.

Zadanie A3.1: Czy Państwa certyfikat jest poprawny?


Wprowadzone dane i wyniki sprawdzania nie są zapisywane. Przeglądarka zapamiętuje udzielone odpowiedzi oraz informację, czy zadanie zostało zaliczone. Po zalogowaniu w Moje kursy zapisywana jest jedynie informacja, że zadanie zostało zaliczone (lub prawie zaliczone); tam można ją również usunąć.

Więcej informacji

Poniższe artykuły opisują te kroki w panelach WebOké; w innych panelach działają one w podobny sposób.

Chwileczkę…

Konfiguracja domen

Dla każdej domeny można ustawić serwery nazw, powiązanie z hostingiem oraz to, kto zostanie właścicielem.

Wczytywanie domen…