Je veux mettre en place une jolie URL sur un répertoire virtuel. Mais je veux aussi un filet de sécurité pour le répertoire virtuel au cas où quelqu'un le rencontrerait directement. Appelons le répertoire virtuel fooMod_rewrite, 301s et slashes
RewriteRule ^foo/(.*)$ ./foo/page.php?term=$1 [QSA]
Cela semble fonctionner correctement. Toutes les pages sont redirigées et affichées correctement et la jolie URL reste dans la barre d'adresse (plutôt que de rediriger vers l'adresse physique comme avec un 301)
Mais si je vais sur www.domain.com/foo Je reçois 404 :(
Si je vais à www.domain.com/foo/ (notez la barre oblique)
le script se poursuit et un message d'erreur est affiché grâce à une validation supplémentaire dans mon PHP. Comment puis-je ranger le répertoire virtuel (avec/sans une barre oblique)? Personne ne devrait jamais frapper cela, mais si ils le font, je veux être prêt et les rediriger vers la page d'accueil
Après avoir lu another users question j'ai essayé:
Redirect 301 /foo /?q=empty
Mais c'est en conflit avec ma règle initiale. Je suis de se retrouver avec des liens comme: www.domain.com/?q=empty/Blah (au lieu de/foo/Blah)
donnez des détails: sur la façon dont votre jolie URL ressemble à 'topic'. – ThinkingMonkey
sujet était censé être foo. édité. :) – Adam
vérifier la réponse mise à jour. – ThinkingMonkey