J'ai un serveur où je ne peux configurer httpd en utilisant .htaccess, une configuration globale ne peut pas accéder. Je veux réécrire presque tous les chemins non-existants à index.php, donc je l'ai fait quelque chose comme:.htaccess problème stupide
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?path=$1 [L,QSA]
Et c'est ok. Mais une autre chose que je veux faire est d'empêcher l'accès au chemin où je garde les fichiers PHP (je ne peux pas les stocker ailleurs) qui est par exemple/php. Je voudrais que tout en commençant par/php récrit à index.php path = php ... donc je l'ai fait quelque chose comme:
RewriteCond %{REQUEST_URI} ^/php.*
RewriteRule ^(.*)$ /index.php?path=$1 [L,QSA]
Et ce serait aussi bien fonctionner si j'avais accès à la configuration globale. Dans le cas d'une configuration par répertoire, quand j'accède à/php, il le réécrit à index.php? Path = php et remplace le nom du répertoire par: /php/index.php?path=php. Je lis la documentation et je me rends compte qu'elle utilise des redirections internes lorsque la confoguration par répertoire est utilisée. Comment puis-je éviter ce comportement?
Le résultat est OK mais je souhaite éviter les redirections externes. Aussi, je vais plutôt utiliser le refus de toute option, mais je voulais le cacher du monde extérieur, pas seulement l'interdire. Thnx – justnoone
Vous pouvez essayer 'RewriteBase', même si je ne sais toujours pas à quoi cela peut servir. – wRAR
J'ai essayé aussi, mais il semble qu'il utilise cela avant de réécrire, lors du test de l'URL et il ajoute le préfixe après ... – justnoone