Com redirigir HTTP a HTTPS a Apache
HTTP (Hyper Text Transfer Protocol) és un protocol popular i fonamental per a la comunicació de dades a la World Wide Web (WWW); normalment entre un navegador web i el servidor que emmagatzema fitxers web. Mentre que HTTPS és la versió segura d'HTTP, on la S al final significa Segur.
Mitjançant HTTPS, totes les dades entre el vostre navegador i el servidor web es xifren de manera segura. Aquest tutorial us mostrarà com redirigir HTTP a HTTPS al servidor HTTP Apache a Linux.
Abans de poder configurar una redirecció d'HTTP a HTTPS d'Apache per al vostre domini, assegureu-vos que tingueu instal·lat el certificat SSL i que mod_rewrite estigui habilitat a Apache. Per obtenir més informació sobre com configurar SSL a Apache, consulteu les guies següents.
- Com crear claus i certificats SSL autofirmats per a Apache
- Com instal·lar el certificat SSL Let's Encrypt a CentOS/RHEL 7
- Com instal·lar el certificat SSL Let's Encrypt a Debian/Ubuntu
Redirigeix HTTP a HTTPS a Apache mitjançant el fitxer .htaccess
Per a aquest mètode, assegureu-vos que mod_rewrite estigui habilitat, en cas contrari, activeu-lo així als sistemes Ubuntu/Debian.
$ sudo a2enmod rewrite [Ubuntu/Debian]
Per als usuaris de CentOS/RHEL, assegureu-vos que teniu la línia següent a httpd.conf (suport mod_rewrite, activat per defecte).
LoadModule rewrite_module modules/mod_rewrite.so
Ara només cal editar o crear un fitxer .htaccess al directori arrel del vostre domini i afegir aquestes línies per redirigir http a https.
RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Ara, quan un visitant escrigui http://www.yourdomain.com
, el servidor redirigirà automàticament HTTP a HTTPS https://www.yourdomain.com
.
Redirigeix HTTP a HTTPS a Apache Virtual Host
A més, per forçar tot el trànsit web a utilitzar HTTPS, també podeu configurar el vostre fitxer d'amfitrió virtual. Normalment, hi ha dues seccions importants de la configuració d'un host virtual si un certificat SSL està habilitat; el primer conté configuracions per al port no segur 80.
El segon és per al port segur 443. Per redirigir HTTP a HTTPS per a totes les pàgines del vostre lloc web, primer obriu el fitxer d'amfitrió virtual adequat. A continuació, modifiqueu-lo afegint la configuració següent.
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>
Deseu i tanqueu el fitxer i, a continuació, reinicieu el servidor HTTP d'aquesta manera.
$ sudo systemctl restart apache2 [Ubuntu/Debian] $ sudo systemctl restart httpd [RHEL/CentOS]
Mentre que
és la solució més recomanada perquè és més senzilla i segura.
Potser us agradaria llegir aquest útil assortiment d'articles sobre l'enfortiment de la seguretat del servidor HTTP Apache:
- 25 trucs útils d'Apache .htaccess per protegir i personalitzar llocs web
- Com protegir amb contrasenya els directoris web a Apache mitjançant el fitxer .htaccess
- Com amagar el número de versió d'Apache i una altra informació sensible
- Protegiu Apache contra atacs de força bruta o DDoS mitjançant Mod_Security i Mod_evasive
Això és tot! Per compartir qualsevol reflexió sobre aquesta guia, feu servir el formulari de comentaris que trobareu a continuació. I recordeu estar sempre connectat a linux-console.net.