Bonjour, auditeur de longue date, première fois ici!
Merci pour les excellents conseils que vous partagez tous.mod_rewrite: Comment faire correspondre le fichier dans le répertoire ou dans la racine en fonction de la 'disponibilité'?
J'ai ces règles mod_rewrite mis en place:
RewriteRule ^([^/.]+)/([^/.]+)/?$ $1--$2.php?%{QUERY_STRING} [L]
RewriteRule ^([^/.]+)/?$ $1.php?%{QUERY_STRING} [L]
Ils font /société/services/ redirect à l'entreprise - services.php. Ou/company/à company.php. Fonctionne parfaitement.
Mais maintenant je voudrais une autre règle que si je devais mettre services.php à l'intérieur du répertoire physique/compagnie/il correspondra et redirigera cela. Et si cela échoue, cherchez ma règle initiale. (Et à défaut, le retour 404.)
je me suis dit que ce serait aussi simple que notamment:
RewriteRule ^([^/.]+)/([^/.]+)/?$ $1/$2.php?%{QUERY_STRING} [L]
mais pas. Il retournera un 404 à la place. Je suis un peu perplexe car cela va à l'encontre de la façon dont je pensais que mod_rewrite fonctionne (si une règle ne correspond pas, passez à la suivante.)
Merci pour vos conseils!
Il n'est pas nécessaire d'ajouter la chaîne de requête. – Gumbo