Je veux redirect test.com/folder/create
vers test.com/folder/create(.php)
mais tout ce qui suit /folder/
est perçu comme une $_GET[]
avec les lignes ci-dessous
RewriteCond %{REQUEST_URI} !^/folder/index\.php$ [NC] RewriteRule ^folder/([^/]*)$ /folder/index.php?type=$1
J’ai essayé
RewriteCond %{REQUEST_URI} !^/folder/create\.php$ [NC] RewriteRule ^folder/create$ /folder/create.php
Mais pas de chance ( erreur 500 ), est-ce que quelqu’un peut me diriger dans la bonne direction sur la façon dont je pourrais éventuellement le faire?
EDIT: Toujours en train de chercher sur le Web une réponse, pas de chance
EDIT: petite édition, code actuel
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d #RewriteCond %{REQUEST_URI} !^item\.php$ RewriteRule ^([^/]+)/?$ index.php?type=$1 [L,QSA] RewriteRule ^([^/]+)/([^/]+)/?$ index.php?type=$1&page=$2 [L,QSA] RewriteRule ^item/([^/]+)/?$ item.php?id=$1 [L,QSA] RewriteRule ^item/([^/]+)/([^/]+)/?$ item.php?id=$1&page=$2 [L,QSA]
La base de réécriture est / folder / / folder / item fonctionne et redirige vers item.php / folder / item / 2 donne une erreur 500, des suggestions?
Vous pouvez utiliser ces règles dans votre folder/.htaccess
(pas dans la racine du site .htaccess):
DirectoryIndex index.php RewriteEngine On RewriteBase /folder/ # append .php extension to every request that has a corresponding .php file RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.+?)/?$ $1.php [L] # rewrite all non-existing files and folders to index,php?type=... RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .+ index.php?type=$0 [L,QSA]
Essayez seulement avec:
Options -MultiViews RewriteRule ^folder/create$ folder/create.php