Kiedy już zainstalowany Twój SSL /TLS certyfikat na Apache, dobrym pomysłem jest przekierowanie całego przychodzącego ruchu HTTP do bezpiecznego protokołu HTTPS. W ten sposób wszelkie istniejące linki do Twojej witryny zaczynające się od http://
, a także wszystkie adresy URL wpisywane przez użytkowników w pasku adresu przeglądarki, otrzymają wersję HTTPS Twojej witryny.
Omówimy tutaj dwie metody. Metoda Virtual Hosts jest preferowana, jeśli masz dostęp do plików konfiguracyjnych serwera Apache.
Metoda wirtualnych hostów
Możesz łatwo przekierować wirtualny host HTTP na port 80
do wirtualnego hosta HTTPS na porcie 443
edytując konfigurację wirtualnych hostów witryny, jak pokazano poniżej:
Nazwa serwera www.example.com Przekierowanie / https://www.example.com/ ServerName www.example.com DocumentRoot / usr / local / apache80 / htdocs SSLEngine On # Konfiguracja trwa ...
Zapoznaj się z dokumentacją serwera, aby znaleźć lokalizację plików konfiguracyjnych hostów wirtualnych. W systemie Ubuntu / Debian domyślną lokalizacją jest /etc/apache2/sites-available/
. Będziesz także musiał ponownie uruchomić Apache po zmianie konfiguracji wirtualnych hostów.
mod_rewrite / .htaccess Metoda
Ta metoda tego wymaga mod_rewrite jest włączony na Twoim serwerze. Jeśli nie masz dostępu do plików hostów wirtualnych serwera Apache, użyj rozszerzenia .htaccess
plik do przepisywania żądań HTTP do HTTPS. Dodaj następujące wiersze do pliku o nazwie .htaccess
plik w katalogu głównym domeny (utwórz plik, jeśli nie istnieje):
RewriteEngine On RewriteCond% {HTTPS}! = On RewriteRule ^ /? (. *) Https: //% {SERVER_NAME} / $ 1 [R, L]