Supprimez les extensions .php avec .htaccess sans rompre DirectoryIndex

J'ai la réécriture suivante dans mon .fichier htaccess qui supprime le .extension php à partir de fichiers, la conversion par exemple so.com/question.php à so.com/question.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

Toutefois, cela rompt également le défaut DirectoryIndex comportement, dans lequel, juste en tapant le répertoire sera redirigée vers le fichier d'index dans le dossier, par exemple so.com/answer affiche so.com/answer/index.php

Simplement en combinant le code ci-dessus avec DirectoryIndex index.php ne permet pas d'obtenir les deux résultats.

Quelqu'un peut-il m'aider à combiner ces deux fonctions, ou de réécrire le code pour exclure index.php fichiers, ce qui permettrait d'atteindre le même résultat?

source d'informationauteur ajcw | 2012-03-09