Vorrei riscrivere gli URL con htaccess a URL meglio leggibili e utilizzare la variabile $ _GET in PHP
A volte uso un sottodominio in modo che debba funzionare con e senza. Inoltre, le variabili non sono necessarie nell'URL. Prendo un massimo di 3 variabili nell'URL
l'URL sub.mydomain.com/page/a/1/b/2/c/3
dovrebbe portare alla sub.mydomain.com/page.php?a=1&b=2&c=3
e l'url sub.mydomain.com/a/1/b/2/c/3
dovrebbe portare a sub.mydomain.com/index.php?a=1&b=2&c=3
dove $_GET['a'] = 1
sono arrivato fino a questo dopo aver cercato e cercando molto
RewriteEngine on
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4&$5=$6&$7=$8 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3&$4=$5&$6=$7 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4&$5=$6 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3&$4=$5 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3 [QSA,NC]
RewriteRule ([^/]+)\.domain.com/([^/]+)$ $1.domain.com/$2.php [L,QSA,NC]
ma ciò che ottengo è un errore del server non trovato
non sono così bravo in questo modo forse supervisiono qualcosa.
Inoltre mi piacerebbe che funzionasse con e senza una barra alla fine
Devo utilizzare RewriteCond e/o impostare alcune opzioni?
Grazie in anticipo.
Anziché eseguire questa suddivisione in mod_rewrite, perché non avere una semplice regola di catchall ('RewriteRule^(. *) $ Index.php? P = $ 1') e quindi analizzare l'url come si vorrebbe in php . La maggior parte dei CMS e dei framework Web lo fa in questo modo, poiché è più flessibile, più facile da gestire e non dipende da Apache. –
@LieRyan e poi a un massimo di 9 variabili, buona idea proverò la volta successiva che ho avuto lo stesso problema. – Dediqated
Non posso fare a meno di dire ... Q-Dance FTW! –