ceci est ma structure de répertoire.htaccess multiples réoriente
/home
/template
/classifieds
/listings
Je veux cacher/modèle et que vous souhaitez afficher tous les fichiers sous modèle sur la maison. comme /home/template/home.php devrait être www.example.com/home.php ou /home/template/style.css devrait être www.example.com/style.css
Et quelqu'un essayant d'accéder à l'exemple .com/template/.php devrait être renvoyé à example.com/ .php s'il existe ou 404.php s'il ne l'est pas.
C'était mon htaccess à gérer cela.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} ^/template/.*php
RewriteRule . /$1 [NC,R]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Options -Indexes
Et mon code php
if (!file_exists("template/" . $page))
include_once "template/404.php";
else
include_once "template/" . $page;
Cependant j'ai ajouté plus de choses comme/classés et/listes doivent être répertoriés comme il est, à savoir example.com/classified/*.php
maintenant, quand je tente d'accéder /answers/home.php ouvre directement la home.php plutôt que d'ouvrir index.php
Ceci est mon nouveau code
if (!file_exists($segments[1] . '/' . $page))
include_once "template/404.php";
else
include_once $segments[1] . '/' . $page;
Alors, quel devrait être le htaccess?
Je appuie la 're-org vos répertoires' partie. – Don