htaccess, cómo ocultar extensiones de php

htaccess, cómo ocultar extensiones de php

Estoy intentando utilizar el archivo .htaccess para ocultar las extensiones de PHP pero no parece funcionar. Funciona si hay un archivo html en el directorio y no uso la extensión .html.

Esto es lo que tengo.

RewriteEngine On
RewriteBase /

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

Entonces

http://www.mydomain.com/test

Debería mencionar.

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

Dice:

Not Found

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

Respuesta1

En el archivo de configuración del sitio, pude solucionar este problema eliminando MultiViews. Luego empezó a funcionar normalmente.

Respuesta2

Tengo mi propio HomeServer con Ubuntu Server y así es como lo hice.

  1. Debe editar el archivo de configuración de Apache2 ubicado en/etc/apache2/apache2.conf

    sudo nano /etc/apache2/apache2.conf
    
  2. Tienes que editar la línea que se ve así:

    <Directory /var/www/html/>
      Option Indexes FollowSymbLinks
      AllowOverride None
      Require all granted
    </Directory>
    
    • Debe reemplazar AllowOverride Nonecon AllowOverride All, luego debe habilitar el modo de reescritura en apache2 en la terminal:

      sudo a2enmod rewrite
      
  3. luego reinicie el servicio apache

    sudo service apache2 restart
    

Pruébelo ahora, debería funcionar.

información relacionada