Como ocultar las extensiones .php en Apache

Advertencia

Esta entrada ha sido escrita desde hace más de un año. Por favor, lee el articulo manteniendo en cuenta su antigüedad.

Hace tiempo he buscado informaciones sobre este asunto y encontré dos maneras distintas de hacerlo
  1. Usando "AddType" para indicar a Apache como tratar las extensiones: http://roshanbh.com.np/2008/01/hiding-php-file-extension.html

    De esta manera no necesitamos de usar el mod_rewrite ahorrando un poco de carga a nuestro servidor, pero debemos renombrar los ficheros .php a .html

    # Metodo 1 renombrar ficheros .php a .html
    # ej. script.php a script.html
    # AddType hace que todos los PHP aparezcan como HTML
    AddType application/x-httpd-php .htm .html
    
  2. Usando el modulo mod_rewrite para re-escribir la URL de manera que apunte al fichero correcto.

    Con este método no necesitamos cambiar la extension del fichero.

    # Metodo 2 con Rewrite sin renombrar ficheros
    RewriteEngine On
    RewriteRule ^([^\.\?]+)(\?.*)?$ $1.php
    

    En el Blog de Roshan's Blog hay tambien un articulo con algunos ejemplos para hacer URL amigables con el SEO. http://roshanbh.com.np/2008/02/hide-php-url-rewriting-htaccess.html

Danilo