htaccess, como ocultar extensões php

htaccess, como ocultar extensões php

Estou tentando usar o arquivo .htaccess para ocultar extensões php, mas parece não estar funcionando. Funciona se houver um arquivo html no diretório e eu não usar a extensão .html.

Isso é o que eu tenho.

RewriteEngine On
RewriteBase /

RewriteRule ^([^/.]+)$ $1.php [L]

Então

http://www.mydomain.com/test

Deveria trazer à tona.

http://www.mydomain.com/test.php

Diz:

Not Found

The requested URL /test was not found on this server.

Responder1

No arquivo conf do site, consegui consertar isso retirando MultiViews. Depois começou a funcionar normalmente.

Responder2

Eu tenho meu próprio HomeServer com Ubuntu Server e foi assim que fiz.

  1. Você precisa editar o arquivo de configuração do Apache2 localizado em/etc/apache2/apache2.conf

    sudo nano /etc/apache2/apache2.conf
    
  2. Você tem que editar a linha que fica assim:

    <Directory /var/www/html/>
      Option Indexes FollowSymbLinks
      AllowOverride None
      Require all granted
    </Directory>
    
    • Você precisa substituir AllowOverride Nonepor e AllowOverride All, em seguida, ativar o modo de reescrita no apache2 no terminal:

      sudo a2enmod rewrite
      
  3. então reinicie o serviço Apache

    sudo service apache2 restart
    

Tente agora, deve funcionar.

informação relacionada