1

I'm using this in my top level .htaccess to remove the PHP file type extension on my *.php files.

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

But I have discovered it also prevents my browser from calling the index.php page in my sub-directories. I need to include /index.php explicitly in the URL.

Is there a better way to remove the PHP file type extension on my *.php files?

Nisse Engström
  • 4,738
  • 23
  • 27
  • 42
Pete D
  • 311
  • 3
  • 15

1 Answers1

1

here you go:

RewriteEngine  on
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]

or try this one. This should also work in a sub-directory path:

RewriteEngine  on
RewriteRule ^(.*)$ $1.php

or in an if clause

<IfModule mod_rewrite.c>
    RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
Blueblazer172
  • 588
  • 2
  • 15
  • 44