Kako preusmjeriti HTTP na HTTPS na Apacheu
HTTP (Hyper Text Transfer Protocol) je popularan kao i osnovni protokol za komunikaciju podataka na World Wide Web (WWW ); obično između web pretraživača i servera koji pohranjuje web datoteke. Dok je HTTPS sigurna verzija HTTP-a, gdje 'S' na kraju znači 'Secure'.
Koristeći HTTPS, svi podaci između vašeg pretraživača i web servera su šifrirani i tako sigurni. Ovaj vodič će vam pokazati kako preusmjeriti HTTP na HTTPS na Apache HTTP serveru u Linuxu.
Prije nego što možete postaviti Apache HTTP za HTTPS preusmjeravanje za vašu domenu, provjerite imate li instaliran SSL certifikat i mod_rewrite je omogućen u Apacheu. Za više informacija o tome kako postaviti SSL na Apache, pogledajte sljedeće vodiče.
- Kako kreirati samopotpisane SSL certifikate i ključeve za Apache
- Kako instalirati Let’s Encrypt SSL certifikat na CentOS/RHEL 7
- Kako instalirati Let’s Encrypt SSL certifikat na Debian/Ubuntu
Preusmjerite HTTP na HTTPS na Apache koristeći .htaccess datoteku
Za ovu metodu, uvjerite se da je mod_rewrite omogućen, inače je omogućite ovako na Ubuntu/Debian sistemima.
sudo a2enmod rewrite [Ubuntu/Debian]
Za korisnike CentOS/RHEL-a, uvjerite se da imate sljedeću liniju u httpd.conf (podrška za mod_rewrite – omogućeno po defaultu).
LoadModule rewrite_module modules/mod_rewrite.so
Sada samo trebate urediti ili kreirati datoteku .htaccess u korijenskom direktoriju vaše domene i dodati ove linije da preusmjerite http na https.
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Sada, kada posjetitelj upiše http://www.yourdomain.com
, server će automatski preusmjeriti HTTP na HTTPS https://www.yourdomain.com
.
Preusmjerite HTTP na HTTPS na Apache virtuelnom hostu
Osim toga, da prisilite sav web promet da koristi HTTPS, također možete konfigurirati svoj virtualni host fajl. Obično postoje dva važna dijela konfiguracije virtualnog hosta ako je SSL certifikat omogućen; prvi sadrži konfiguracije za nebezbedni port 80.
Drugi je za sigurni port 443. Da biste preusmjerili HTTP na HTTPS za sve stranice vaše web stranice, prvo otvorite odgovarajući virtuelni host fajl. Zatim ga izmijenite dodavanjem konfiguracije ispod.
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.yourdomain.com
Redirect / https://www.yourdomain.com
</VirtualHost>
<VirtualHost _default_:443>
ServerName www.yourdomain.com
DocumentRoot /usr/local/apache2/htdocs
SSLEngine On
etc...
</VirtualHost>
Sačuvajte i zatvorite datoteku, a zatim ponovo pokrenite HTTP server na ovaj način.
sudo systemctl restart apache2 [Ubuntu/Debian]
sudo systemctl restart httpd [RHEL/CentOS]
Dok je
najpreporučljivije rješenje jer je jednostavnije i sigurnije.
Možda biste voljeli da pročitate ove korisne asortimane članaka o sigurnosti Apache HTTP servera:
- 25 korisnih Apache '.htaccess' trikova za osiguranje i prilagođavanje web stranica
- Kako lozinkom zaštititi web direktorije u Apacheu koristeći .htaccess datoteku
- Kako sakriti broj verzije Apachea i druge osjetljive informacije
- Zaštitite Apache od brutalne sile ili DDoS napada koristeći Mod_Security i Mod_evasive
To je sve! Da biste podijelili bilo kakve misli u vezi sa ovim vodičem, koristite obrazac za povratne informacije u nastavku. I zapamtite da uvijek ostanete povezani s linux-console.net.