Я обычно использую что-то вроде этого:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [NC,OR]
RewriteCond %{REQUEST_FILENAME} -d [NC]
RewriteRule .* - [L]
RewriteRule ^$ index.php [L,QSA]
RewriteRule ^([^/\.]+)/?$ $1.php [L,QSA]
</IfModule>
Обратите внимание на знак вопроса после косой черты. Вы можете добавить это к примеру Гамбо, чтобы «проверить» конечный слеш (он может быть там или нет).