mod_rewrite è un modulo per il webserver Apache HTTP Server che consente di effettuare redirect oppure mostrare agli utenti URL più gradevoli, sostituendo miosito.com/articoli.php?categoria=5&articolo=2
con un più pratico e significativo miosito.com/bici/ruote-grandi/
. Vediamo allora come installare, attivare e configurare mod_rewrite per Apache HTTP Server con Ubuntu Server, CentOS o Windows
Per questa guida daremo per scontato che Apache HTTP Server sia già stato installato e configurato. Così non fosse:
» Leggi: Installare e configurare un server web: La Grande Guida ad Apache, PHP, MySQL su Windows e Linux
Nel resto dell'articolo ci riferiremo al programma "Apache HTTP Server" chiamandolo (impropriamente) solo "Apache", per brevità e per conformarci al nome usato nel quotidiano.
Installare/attivare mod_rewrite
mod_rewrite è fornito a corredo del pacchetto di Apache per Ubuntu, CentOS e Windows. Non è quindi necessario "installare" null'altro.
Ciò nonostante, mod_rewrite non viene effettivamente caricato di default: è necessario attivarlo esplicitamente con la procedura indicata di seguito.
Installare mod_rewrite su Ubuntu Server e CentOS
Per attivare mod_rewrite in ambiente Linux basta impartire questo comando:
-
Ubuntu:
sudo a2enmod rewrite && sudo systemctl reload apache2 && sudo apache2ctl -M | grep rewrite
-
CentOS:
sudo curl -o "/etc/httpd/conf.modules.d/mod_rewrite.conf" https://turbolab.it/scarica/207 && sudo systemctl reload httpd && sudo apachectl -M | grep rewrite
Se, come ultima riga, viene mostrato rewrite_module (shared)
, mod_rewrite è stato caricato correttamente
Installare mod_rewrite su Windows
Per attivare mod_rewrite su Windows dobbiamo modificare il file di configurazione principale di Apache. Se avete seguito le indicazioni della nostra guida ad Apache su Windows, lo trovate in
C:\Program Files\Apache\conf\httpd.conf
Apritelo con Blocco note e cercate questa riga:
LoadModule rewrite_module modules/mod_rewrite.so
Rimuovere il commento (#
) ad inizio riga e salvare
Ora riavviate Apache e mod_rewrite è pronto all'uso.