sto utilizzando il seguente codice ne file .htaccess per non far visualizzare l'estensione delle pagine php (localhost/pagina.php diventa localhost/pagina). Il codice funziona correttamente ma ho un problema , la pagina index.php viene correttamente rinominata in index e a questo punto il server non la riconosce come index di default ovvero se provo a visualizzare la pagina localhost/ mi reindirizza alla 404.php

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !\.php$
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . - [L]

#"nascondo" l'estensione .php
RewriteCond %{REQUEST_URI} !\.php
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]

#per tutti gli url che contengono .php risponde il file 404.php
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{REQUEST_URI} \.php
RewriteCond %{REQUEST_FILENAME} !404.php$
RewriteRule ([a-zA-Z0-9\-_]*) 404.php [L]

grazie in anticipo a chi cercherà di aiutarmi