/ / .htaccess file non applicabile (rimozione dell'estensione .php) - php, .htaccess

Il file .htaccess non è stato applicato (rimozione dell'estensione .php) - php, .htaccess

Ho provato a rimuovere solo l'estensione .php utilizzando il file .htaccess sul mio server XAMPP localhost. Ho inserito le seguenti righe:

RewriteEngine On
RewriteOptions inherit
Options +FollowSymlinks
Options -Multiviews
## hide .php extension
## To externally redirect /dir/foo.php to /dir/foo
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+)$ $1.php [NC,L]

Ho provato più opzioni per raggiungere il mio obiettivo, ma nulla è cambiato. Ho fatto qualcosa di male?

risposte:

0 per risposta № 1

Controlla se lo hai AllowOverride All nel httpd.conf file (il file di configurazione per apache). Se si utilizza XAMPP su Windows, il file httpd.conf dovrebbe risiedere in una directory come: C: xamppapacheconfhttpd.conf

Aggiungi il AllowOverride All linea nel tag Directory. Per esempio: <Directory C:xampphtdocs> AllowOverride All Allow from all </Directory>

Post scriptum Consentendo l'override, dici al server di consentire il .htaccess file per sovrascrivere la configurazione predefinita del server.

Modifica: Scusa se in precedenza ho menzionato AllowOverride "On". Dovrebbe essere AllowOverride "All". Questo funziona bene nella mia ubuntu. Proverò a scoprire come farlo funzionare presto in windows (xampp).


0 per risposta № 2

I seguenti lavori per me su apache2. Spero che funzionerà anche su XAMPP. Questo è quasi uguale al tuo codice, ma controlla il nome file richiesto non esistee che il file PHP fa esistere.

RewriteEngine On
RewriteOptions inherit
Options +FollowSymlinks
Options -Multiviews
## hide .php extension
## To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ %{REQUEST_FILENAME}.php [NC,L]