{"id":167,"date":"2015-10-29T12:21:36","date_gmt":"2015-10-29T17:21:36","guid":{"rendered":"https:\/\/wjharil.com\/blog\/?p=167"},"modified":"2017-10-18T12:49:27","modified_gmt":"2017-10-18T17:49:27","slug":"ofuscar-html-minify","status":"publish","type":"post","link":"https:\/\/wjharil.com\/blog\/ofuscar-html-minify\/","title":{"rendered":"C\u00f3mo ofuscar c\u00f3digo html (minify html)"},"content":{"rendered":"<p>Muchos de los que nos dedicamos al <a title=\"Desarrollo de p\u00e1ginas web\" href=\"https:\/\/wjharil.com\"><strong>desarrollo web<\/strong><\/a>, <del>no deseamos compartir (o dejarlo f\u00e1cil) con otras personas <em>nuestro trabajo de maqueta<\/em>; y \u00e9sto es entendible debido a que nos ha tomado tiempo (soy culpable, tambi\u00e9n he \u00abpirateado\u00bb estructuras!)<\/del>.<\/p>\n<p>Hoy, voy a ense\u00f1arles<strong> c\u00f3mo ofuscar el c\u00f3digo fuente del HTML<\/strong> que mostramos en el navegador web, gracias a un tutorial de un blog amigo, <del>\u00bfpara qu\u00e9 reinventar la rueda?<\/del>. Ojo, que \u00e9sto tambi\u00e9n nos servir\u00eda para<strong> mejorar la carga de la p\u00e1gina<\/strong> (ofuscamos y ganamos unos puntitos en SEO).<\/p>\n<h2>Ofuscar c\u00f3digo html<\/h2>\n<p>Lo que debemos hacer, es agregar el siguiente c\u00f3digo en el inicio del documento (la primera l\u00ednea) php de la p\u00e1gina que queremos ofuscar. Ojo, que debe ser un <strong>archivo php<\/strong>.<\/p>\n<pre class=\"lang:php decode:true \">&lt;?php ob_start(\"comprimir_pagina\"); ?&gt;<\/pre>\n<p>Y luego \u00e9ste c\u00f3digo al finalizar el documento (s\u00ed s\u00ed!, la \u00faltima l\u00ednea del mismo archivo).<\/p>\n<pre class=\"lang:php decode:true \">&lt;?php\r\n  \/\/ Una vez que el b\u00fafer almacena nuestro contenido utilizamos \"ob_end_flush\" para usarlo y deshabilitar el b\u00fafer\r\n  ob_end_flush();\r\n  \/\/ Funci\u00f3n para eliminar todos los espacios en blanco\r\n function comprimir_pagina($buffer) {\r\n\r\n    $search = array(\r\n        '\/\\&gt;[^\\S ]+\/s',     \/\/ elimina espacios en blanco despu\u00e9s de las etiquetas, excepto el espacio\r\n        '\/[^\\S ]+\\&lt;\/s',     \/\/ elimina en blanco antes de las etiquetas, excepto el espacio\r\n        '\/(\\s)+\/s',         \/\/ Acortar m\u00faltiples secuencias de espacios en blanco.\r\n        '\/&lt;!--(.|\\s)*?--&gt;\/' \/\/ Borrar comentarios html\r\n    );\r\n\r\n    $replace = array(\r\n        '&gt;',\r\n        '&lt;',\r\n        '\\\\1',\r\n        ''\r\n    );\r\n\r\n    $buffer = preg_replace($search, $replace, $buffer);\r\n\r\n    return $buffer;\r\n   }\r\n?&gt;<\/pre>\n<p>Como vemos, ya est\u00e1 comentado (gracias <strong>icodeart<\/strong> :)) y podemos entenderlo f\u00e1cilmente. Con \u00e9sto, ya tendr\u00edamos nuestro <strong>c\u00f3digo html ofuscado<\/strong> y como mencionaba, una carga m\u00e1s r\u00e1pida del archivo.<\/p>\n<blockquote><p>Es necesario mencionar, que el c\u00f3digo es libre para todos \ud83d\ude42<small>Te gust\u00f3 el post?<\/small><\/p><\/blockquote>\n<p><em>* Im\u00e1genes y c\u00f3digo tomados de iCodeArt \ud83d\ude42<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Muchos de los que nos dedicamos al desarrollo web, no deseamos compartir (o dejarlo f\u00e1cil)<br \/><a class=\"moretag\" href=\"https:\/\/wjharil.com\/blog\/ofuscar-html-minify\/\">Continuar Leyendo...<\/a>","protected":false},"author":1,"featured_media":168,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":["html"],"featured_image_src":"https:\/\/wjharil.com\/blog\/wp-content\/uploads\/2015\/10\/codigo-html-ofuscado-1024x536.png","categorias":["Facebook","Fuera de tema","Recursos","Tutoriales"],"_links":{"self":[{"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/posts\/167"}],"collection":[{"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/comments?post=167"}],"version-history":[{"count":9,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/posts\/167\/revisions"}],"predecessor-version":[{"id":255,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/posts\/167\/revisions\/255"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/media\/168"}],"wp:attachment":[{"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/media?parent=167"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/categories?post=167"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wjharil.com\/blog\/wp-json\/wp\/v2\/tags?post=167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}