Apache: servir PHP usando extensión HTML - Foro Support - Manuales tecnicos

Announcement

Collapse
No announcement yet.

Apache: servir PHP usando extensión HTML

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Apache: servir PHP usando extensión HTML

    Existe la posibilidad de que queramos introducir código PHP dentro de ficheros estáticos (.html, .htm…), de modo que al servir la página a través del navegador dicho código php se ejecute en lugar de mostrarse como texto plano. Este truco valdría tanto para cualquier otra extensión (cgi por ejemplo).

    Para realizar esta configuración, debemos utilizar la directiva AddType en el fichero .htaccess del website o directamente a nivel general del servidor web en el fichero httpd.conf.

    Lo primero que debemos verificar es que tenemos cargado en Apache el módulo mod_mime, que es el encargado de servir la directiva AddType.

    # httpd -l | grep mime
    mod_mime.c

    Una vez verificado, si quisieramos mapear las extensiones .html para servir contenido PHP, deberíamos añadir la siguiente directiva al fichero .htaccess:

    AddType application/x-httpd-php .php .htm .html .shtml

    Si tuvierais varias versiones de PHP instaladas en un mismo servidor, es posible que necesitéis especificar la versión del siguiente modo:

    AddType application/x-httpd-php5 .php .htm .html .shtml
    ó

    AddType application/x-httpd-php4 .php .htm .html .shtml

    Esto lo podemos añadir también a nivel general en Apache, ya sea directamente en el httpd.conf o en el fichero php.conf junto con el resto de configuraciones de PHP. Si lo añadimos en httpd.conf reiniciamos el servicio tras hacerlo:

    # /etc/init.d/httpd graceful

    Ahora, si hacemos un fichero test.html con el siguiente contenido, al servirlo en el navegador web ejecutará el código PHP en lugar de mostrarlo como si fuera html puro y duro:

    <h1>Prueba ejecutar PHP en fichero HTML</h1>
    <? phpinfo ?>
Working...
X