Sono diventato matto per attivare gli url brevi con mod-rewrite e ora che ci sono riuscito ho preparato una piccola guida per evitare ad altri di perdere lo stesso (prezioso) tempo.
Mod_Rewrite modifiche con Apache 2.0.54
Mod_Rewrite è un modulo Apache che permette di riscrivere gli URL al volo. Una pagina dinamica www.tuosito.it/articolo.php?id=1 diventa per esempio www.tuosito.it/articolo-1.html
Per attivare Mod_Rewrite:
1 – Apri la cartella in cui è installato Drupal
-esempio: D:\Programmi\Apache Group\Apache2\htdocs\nomecartellatuosito
2 – Apri il file .htaccess con un editor di testo (ad esempio Blocco Note)
- cerca la stringa
# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on
# Modify the RewriteBase if you are using Drupal in a subdirectory and
# the rewrite rules are not working properly.
- subito sotto compare la stringa
#RewriteBase /drupal
- decommentala (togli #)e modificala con il percorso della cartella del tuo sito
RewriteBase /nomecartellatuosito
-salva il file
NB in Apache2 il modulo mod_rewrite.c non esiste nella cartella module di apache2, quindi se la modifica non funziona non affannarti a cercare il file in questione ma
3 - apri il file httpd.conf nella cartella conf di apache2
- esempio: D:\Programmi\Apache Group\Apache2\conf
- trova e decommenta (cioè togli #) la voce
#LoadModule rewrite_module modules/mod_rewrite.so
- trova la voce
First, we configure the "default" to be a very restrictive set of
# features.
#
<Directory />
Options FollowSymLinks
AllowOverride none
</Directory>
e sostituisci none con All
- trova la voce
AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride none
e sostituisci none con All
- salva il file
4 – apri Apache Service Monitor (cliccando sull’icona di Apache in basso a destra sulla barra delle applicazioni) e clicca su Restart per rendere operative le modifiche apportate al file httpd.conf .
5 – accedi al tuo sito (se in locale probabilmente http://localhost/nometuosito) e dopo esserti logato come amministratore vai in amministra > impostazioni e nella sezione URL semplificati spunta la casella Attivo. Salva la configuarazione e se tutto è andato per il meglio da questo momento il modulo Mod-Rewrite è attivo.
Ho seguito questa guida per attivare sotto apache 2.2.6 dentro PAMPA (Win) l'URL rewrite ma senza successo.
Qualcuno è riuscito a far girare i clean URL di Drupal sotto PAMPA??
Ciao e Grazie.
Hai provato a deccomentare, nel file httpd.conf, la riga LoadModule rewrite_module modules/mod_rewrite.so dovrebbe essere nella cartella di apache o, se usa una cartella di configurazione come EasyPhp, nella cartella Config o nome simile.
Poi devi riavviare apache perchè funzioni.
Già fatto sia nel file httpd.conf della directory principale sia in quello dentro la cartella default... nada! :(
Daltronde è uno dei passaggi elencati nella guida in alto.
;)
Io lo avevo fatto tempo fa me purtroppo ora non uso più pampa ma xaampp.
Di sicuro tutta la procedura sopra non è necessaria e va attivato solo il rewrite di apache. Più tardi vedo se ho ancora i file modificati e, se li trovo, te li allego.
Sei fortunato :-)
Apri il file httpd.conf che si trova nella cartella config ed, oltre a togliere il commento sopra, cambia:
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
In:
<Directory />
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Il resto delle istruzioni del primo post non sono necessarie.
Grazie... comunque ho scoperto che funziona su la mia vecchie gloriosa PAMPA 0.5.
Sulla 0.6 dove stavo facendo le prove... non mi parte in nessun modo! :O
Grazie mille... tanto la vecchia è quella che prediligo!
;)
Prego ;-)