mod_rewrite

Salve a tutti,

ho un piccolo problemino con il mod-rewrite di apache, che ho deciso di utilizzare:

tanto per fare un esempio ho creato una pagina a casaccio che mi crei un url non standard:

echo "ciao<br />";
$link=$_GET['show'];
switch($link) {
case "1":
echo "sei sulla pagina 1";
break;
case "2":
echo "sei sulla pagina 2";
break;
default:
echo "sei in una pagina a caso";
}

e questa è url.php (che ovviamente funziona). Ora, c'è un file .htaccess così scritto:

RewriteEngine On
RewriteRule ^show/(.*).php /url.php?show=$1

Teoricamente se io scrivessi miadirectory/show/1.php dovrebbe visualizzarmi il case 1 dello switch no?

Naturalmente (e ragione per la quale ho scritto tutto questo ???) ciò non funziona: why?

Grazie a tutti.

Ciao ciao

inviato 9 anni fa
Dark Ninja
X 0 X

prova a cambiare così:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/url.php
RewriteRule ^show/(.*).php$ /url.php?show=$1

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Niente, eppure sembra tutto corretto

risposto 9 anni fa
Dark Ninja
X 0 X

se htaccess nn sta nella cartella root del tuo web server ma in una sotto cartella devi  indicarla

Root

    |

 SottoCartella

               |

           url.php

il mod-rewrite dovrebbe essere così

RewriteEngine On
RewriteRule ^show/(.*).php sottocartella/url.php?show=$1
risposto 9 anni fa
SuperSavio
X 0 X

Prova così,

[code=.htaccess]RewriteEngine On

RewriteRule ^show,(.*)/$ url.php?show=$1

[code=url]

www.tuosito.it/show,2/

risposto 9 anni fa
Andrex
modificato 9 anni fa
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda