Pages : 1
#1 Le 10/07/2009, à 22:05
- francois008
Apache ne prend pas en compte les extentions ?!
Bonjour, à tous
J'ai un petit problème (et oui ! ):
J'ai cette structure de fichiers pour un site:
/
/index/test.htm
/index.php
Si j'essaie d'accéder à /site/pagequinexistepas , c'est le fichier index.php qui se charge ! alors que je devrais avoir une erreur 404.
À priori ca semble un peu idiot comme problème, mais le problème c'est que la vrai situation qui me concerne, c'est que j'ai un .htaccess (oui, je l'ai entièrement retiré pour faire mes tests):
Options +FollowSymLinks
RewriteEngine On
RewriteBase /site/
RewriteRule ^/$ ?page=home [L]
RewriteRule ^product/([a-zA-Z]+)$ ?page=product&titre=$1 [L]
Et:
/index.php (qui est le controlleur)
/product.php (qui est le modèle)
Du coup quand j'essaie d'accéder à /product/FOO , je ne tombe pas sur ?page=product&titre=FOO , mais sur product.php, sans paramètres !
Hors ligne
#2 Le 11/07/2009, à 00:15
- Peck
Re : Apache ne prend pas en compte les extentions ?!
Tu dois avoir l'option multiviews d'activée quelque part dans ta configuration.
Hors ligne
#3 Le 11/07/2009, à 11:37
- wblitz
Re : Apache ne prend pas en compte les extentions ?!
remplace tes règles de réécriture par :
RewriteRule ^/$ ?page=home [QSA,L]
RewriteCond %{REQUEST_URI} ^/product
RewriteRule ^/product/([a-zA-Z]+)$ /product/index.php?page=product&titre=$1 [QSA,L]
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
Pages : 1