La minificación de la salida HTML es importante para mejorar el rendimiento del sitio web al reducir los tiempos de carga de la página y reducir el tamaño total de la página. Minimizar la salida HTML también reduce el uso de datos del usuario que solicita el sitio. La minificación se puede realizar eliminando detalles innecesarios y eliminando espacios en blanco excesivos, nuevas líneas, comentarios, etc. Sin embargo, la minificación reduce la legibilidad del código. La minificación puede reducir el tamaño del archivo hasta en un 70%. PHP se utiliza para transferir archivos del entorno de desarrollo al de producción. Los archivos HTML se pueden minimizar tanto de forma manual como automática. La minificación se puede deshacer usando varias herramientas que agregan espacios en blanco en el código. Sin embargo, los comentarios eliminados durante la minificación no se pueden restaurar.
Ejemplo: Este es el archivo HTML sin minimizar el código.
html
<html> <head> <!-- This is the content that shows in the browser tab --> <title>Title Page</title> </head> <body> <!-- This is a comment. --> <h1>Hello world!</h1> </body> </html>
Archivo HTML después de la minificación
<html><head><title>Página de título</title></head><body><h1>¡Hola, mundo!</h1></body></html>
Enfoque 1: uso de la compresión GZip en Apache: pasos para habilitar la compresión Gzip en Apache
- Abra el archivo de configuración de Apache
vim /etc/httpd/conf/httpd.conf
- Verifique la siguiente línea en el archivo de configuración.
LoadModule deflate_module modules/mod_deflate.so
- Agregue las siguientes líneas al final del archivo de configuración.
AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript
- Reinicie el servidor Apache
sudo service httpd restart
Enfoque 2: el código HTML se puede minimizar con la función ob_start() con una devolución de llamada.
php
<?php ob_start("minifier"); function minifier($code) { $search = array( // Remove whitespaces after tags '/\>[^\S ]+/s', // Remove whitespaces before tags '/[^\S ]+\</s', // Remove multiple whitespace sequences '/(\s)+/s', // Removes comments '/<!--(.|\s)*?-->/' ); $replace = array('>', '<', '\\1'); $code = preg_replace($search, $replace, $code); return $code; } ?> <!DOCTYPE html> <html> <head> <!-- title of page --> <title>Demo for minifier</title> </head> <body> <!-- body of page --> <h1>Hello World</h1> </body> </html> <?php ob_end_flush(); ?>
Producción:
<!DOCTYPE html><html><head><title>Demostración de minificador</title></head><body><h1>Hola mundo</h1></body></html>
Enfoque 3: uso del complemento HTMLMinifier: HTML Minifier es un minificador de código fuente del lado del servidor diseñado para optimizar la salida de HTML, CSS y JavaScript enviada al cliente mediante la eliminación de espacios en blanco, comentarios y nuevas líneas innecesarios. HTMLMinifier ofrece una variedad de opciones de optimización en el complemento que se pueden seleccionar según los requisitos del usuario. Pasos para usar HTML Minifier:
- Descargue el archivo HTMLMinifier de https://www.terresquall.com/download/HTMLMinifier.php
- Incluya el siguiente código en el archivo php
php
<?php // Import the HTMLMinifier require_once 'myfolder/HTMLMinifier.php'; // HTML source to be minified $htmlpage = file_get_contents('./mypage.html'); // Minified version of the page echo HTMLMinifier::process($htmlpage); ?>
- Ejecute el archivo php
Publicación traducida automáticamente
Artículo escrito por Shreyasi_Chakraborty y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA