Je suis en train de faire quelque chose de semblable à $ _SERVER [ « PATH_INFO »] mais des problèmes étranges de serveur me empêchez de l'utiliser ...répertoires, fichiers .htaccess et les variables
Dans mon application, les liens peuvent ressembler
www.domain.com/folder/file/variable
www.domain.com/folder/file
www.domain.com/file/variable or
www.domain.com/file/
Avec .htaccess, je suis en train de se rendre aux pages appropriées, et de ne pas rediriger le index.php ou similaire.
Jusqu'à présent, j'ai ce qui ne fonctionne pas :)
RewriteRule ^(.+)$ /$1.php # page only
RewriteRule ^(.+)/(.+)$ /$1.php?x=$2 # page + variable
RewriteRule ^(.+)/(.+)$ /$1/$2.php # folder/page
RewriteRule ^(.+)/(.+)/(.+)$ /$1/$2.php?x=$3 # folder/page + variable
Je suis sûr que je dois utiliser RewriteCond% {} REQUEST_FILENAME -f pour vérifier si la demande est un nom de fichier ou répertoire. .. mais je ne pouvais pas le faire fonctionner ...
Les variables peuvent contenir tous les caractères étranges - c'est pourquoi je fais correspondre avec le point ... Peut-être que je devrais essayer de faire correspondre les noms de fichiers/dossiers avec az seulement (depuis je ne pense pas qu'ils contiendront jamais autre chose que az, _ ou -).
Toute aide est grandement appréciée, depuis ses presque deux jours d'agonie maintenant :)
1) En raison du motif que vous utilisez commencez par un motif plus long d'abord comme '^ (. +) $' Correspondra '/ fichier /' ainsi que '/ fichier/variable' ainsi que'/dossier/fichier/variable » 2) Utilisez '([^ /] +)' au lieu de '^ (. +) $' - cela vous aidera # 1 – LazyOne