Sto cercando di creare URL puliti sul mio sito web. Ora sono riuscito a configurare Apache così ogni richiesta come mysite.com/page funzionerà. Ma voglio anche che le richieste per mysite.com/page.php vengano reindirizzate a mysite.com/page. Ho impostato variabile d'ambiente in .htaccess per controllare se ho già stato reindirizzato per evitare loop, ma ho ancora ottenere loro ... Ecco il .htaccess:Clean URL Redirect Loop
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteBase/
# set the variable
RewriteRule ^$ - [L]
RewriteRule ^(.*)$ $1 [E=REWROTE:0]
# this works fine
# make mysite.com/page work and set REWROTE variable to 1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L,E=REWROTE:1]
# but if i enable this, i get redirected and then stuck in a loop
# redirect mysite.com/page.php to mysite.com/page , but only if REWROTE not 1
#RewriteCond %{ENV:REWROTE} !^1$
#RewriteRule ^(.*)\.php$ $1 [R=301,L]
Grazie!
Benvenuti a overflow dello stack. Grazie per aver formulato la tua domanda in modo chiaro, fornendo codice e mostrando cosa funziona e cosa no. Se hai informazioni utili nei tuoi log di apache, per favore pubblica anche questo. A volte i problemi di reindirizzamento diventano più evidenti quando si visualizzano i registri. –
Purtroppo non ho accesso a questo tipo di informazioni. – oxeleo