Pasar al contenido principal
Tutoriales y pruebas de gokuhs

Miembro desde hace

16 años 1 mes

Ir al tutorial

Si habéis programado o generado alguna página web desde Windows principalmente a veces cuando subís la página a vuestro servidor os encontráis la desagradable sorpresa que siempre al inicio de cada archivo manda los carácteres "" o también llamados "BOM".

 

Normalmente no debería afectar a la mayoría de los navegadores, pero la cosa se complica si utilizamos funciones como readfile().

 

Para eliminar estos carácteres podemos hacerlo de dos formas, la mas sencilla es desde la linea de comandos de Linux (o cygwin). Lo primero que podemos hacer es localizar estos ficheros con esta marca. Para ello simplemente nos situamos en el directorio raíz de nuestro proyecto y ejecutamos:

$ grep -rlI $'\xEF\xBB\xBF' .

Esto nos listará los archivos de texto que contienen esta marca. Una vez tengamos los archivos que contienen esta marca podemos eliminarlos navegando hasta su directorio y ejecutando este comando:

$ sed -i '1 s/^\xef\xbb\xbf//' *.php

Si queremos eliminar automáticamente esta molesta marca, nos vale con ponernos en la raíz de nuestro proyecto y ejecutar:

$ find . -type f -exec sed '1s/^\xEF\xBB\xBF//' -i.bak {} \; -exec rm {}.bak \;

Para los que no tengáis acceso a una consola Linux podréis utilizar File BOM Detector (mirror) con el que podréis detectar y quitar esta molesta marca desde Windows.