Aprende a optimizar tus blogs para que sean los primeros en las busquedas

Posterizar hace que tu imagen tenga menos colores y por lo tanto ocupe menos espacio haciendo que tus webs carguen mucho más rápido.

Esta opción usada con moderación no tendrá demasiado efecto en lo que verán el 99% de los usuarios, ya que la mayoría no tienen monitores de alta fidelidad y no son capaces de mostrar de forma distinguible varias tonalidades casi iguales.

Si sobrepasas estos límites, obtendrás el efecto cartel, que no es lo que queremos.

¿Como hacerlo en Photoshop?

Read more…

La opción más adecuada es decirle a Apache que queremos que WordPress gestione la página de error 410 usando en el archivo .htaccess una línea que indique donde tiene que mirar cuando ocurre un error 410; esto se hace usando ErrorDocument.
Todas las URLs que queremos que nos devuelvan un 410, las definimos en el .htaccess, utilizando una RewriteRule que use el flag G.
Puede uno pensar en establecer que ese archivo sea el 404.php de nuestro theme, pero no funciona al no cargar correctamente todo el entorno de WordPress.

Usando el código siguiente definiremos desde Apache las URLs que queremos que den error, pero usaremos WordPress para mostrar la página de error como para un 404. (O podemos personalizarla creando un template 410.php).

Para empezar, en el archivo .htaccess añadimos una línea de ErrorDocument:

ErrorDocument 410 /index.php?error=410

En el functions.php del theme, añadir el siguiente código:

/**
* Response header 410.
*
* @param string $template
* @return string
*/
function e12_response_410( $template ) {
    if( is_404() && '410' == $_SERVER['REDIRECT_STATUS'] ) {
      status_header( 410 );
      if( file_exists( STYLESHEETPATH . '/410.php' ) ) {
         return STYLESHEETPATH . '/410.php';
      }
   }
return $template;
}
add_filter( 'template_include', 'e12_response_410' );

Y terminamos añadiendo las reglas a Apache para que devuelva los 410 en las URL que queremos:

RewriteRule ^url-eliminada$ - [G,L]

Si has realizado de forma correcta todos los pasos, al realizar una petición de esa URL, nos debería devolver la misma página que un error 404, pero con la cabecera de un 410.

 

Si todo esto te parece muy complejo puedes usar el plugin 410 for WordPress, pero en cosas tan delicadas como devolver un 410 suelo preferir hacerlo a mano para asegurarme que no hay sorpresas.

 

Probablemente si has llegado hasta aquí, es debido a que has intentado lo básico y no funciona.

(Por si no lo has hecho, o no usas Plesk) La forma habitual de activar la compresión GZIP en un servidor web es añadiendo las siguientes líneas al .htaccess de Apache, que está en el directorio raíz de tu web (Puedes hacerlo por sftp o usando el administrador de ficheros de Plesk)

 
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE application/javascript 
AddOutputFilterByType DEFLATE application/rss+xml 
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject 
AddOutputFilterByType DEFLATE application/x-font 
AddOutputFilterByType DEFLATE application/x-font-opentype 
AddOutputFilterByType DEFLATE application/x-font-otf 
AddOutputFilterByType DEFLATE application/x-font-truetype 
AddOutputFilterByType DEFLATE application/x-font-ttf 
AddOutputFilterByType DEFLATE application/x-javascript 
AddOutputFilterByType DEFLATE application/xhtml+xml 
AddOutputFilterByType DEFLATE application/xml 
AddOutputFilterByType DEFLATE font/opentype 
AddOutputFilterByType DEFLATE font/otf 
AddOutputFilterByType DEFLATE font/ttf 
AddOutputFilterByType DEFLATE image/svg+xml 
AddOutputFilterByType DEFLATE image/x-icon 
AddOutputFilterByType DEFLATE text/css 
AddOutputFilterByType DEFLATE text/html 
AddOutputFilterByType DEFLATE text/javascript 
AddOutputFilterByType DEFLATE text/plain 
AddOutputFilterByType DEFLATE text/xml 

BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4\.0[678] no-gzip 
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
Header append Vary User-Agent 
</IfModule>

También es posible hacerlo con mod_gzip, pero está menos soportado que DEFLATE, y el resultado es prácticamente el mismo.

¿Por qué esto no funciona en la mayoría de instalaciones de Plesk?

La respuesta estaba oculta en la solución anterior, ya que cómo te he dicho, está sólo funciona con Apache. Y es muy común ver instalaciones Plesk que lo que tienen expuesto hacia internet es un NGINX (aunque lo usen como proxy inverso y tengan un Apache detrás), debido a esto lo que deberíamos tocar es la configuración de NGINX.

No te asustes, en Plesk es muy sencillo de hacer y no necesitas ni siquiera tener acceso SSH.

Para ello, entras en el panel de Plesk y vas a Plesk > Domains > tudominio.com > Apache & nginx Settings y añades las siguientes líneas en el apartado «Additional nginx directives» (Directivas nginx adicionales):

gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types image/svg+xml text/plain text/html text/xml text/css text/javascript application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/x-font-ttf application/vnd.ms-fontobject font/opentype font/ttf font/eot font/otf application/font-ttf;

Y listo, guardas y ya puedes comprobar que tu web soporta y tiene activada la compresión GZIP en HTML, CSS, Javascript, XML y los distintos tipos de fuentes web.

¿Y para que quiero tener compresión GZIP en mi web?

Si has llegado aquí de casualidad, te habrás quedado con esta pregunta en la cabeza. Voy a intentar que entiendas las ventajas de tenerla.

Habilitar la compresión GZIP te ayudará a reducir de forma real el tamaño de tu página web, esto además hará que disminuya el tiempo necesario para descargar todos los archivos comprimidos y mejorará el muy importante Tiempo hasta el primer Byte (TTFB). También es importante señalar que los usuarios que te visitan desde un móvil serán más felices ya que estarán gastando «menos megas» de sus preciadas tarifas al visitarte.

La compresión GZIP funciona perfectamente en todos los navegadores web que se utilizan hoy en día, por lo que no tienes que temer que haya ningún tipo de problema de compatibilidad.

Si quieres que te realicen una revisión WPO completa para hacer que tu web funcione mucho más rápido, no dudes en contactarme en WPO Guru

Este problema me ha traído de cabeza muchas veces, ya que se presenta de diferentes maneras pero siempre tiene (en mi caso) un denominador común:

En la raíz del dominio está instalado WordPress y quiero hacer algo (que no tiene que ver con WordPress) con una carpeta dentro de ese dominio

El problema a veces aparece simplemente al crear la carpeta, que es cuando vemos que es imposible acceder al directorio en cuestión ya que nos sale un error 404 de WordPress. Otras veces el error 404 ocurre cuando creamos un .htaccess en la carpeta. (Porque queremos protegerla usando .htpasswd o por cualquier otra razón)

Si estas en uno de estos dos casos y has probado todos los trucos que has podido encontrar por internet (y que a mi al menos no me han funcionado), te traigo (espero) la solución: Read more…

Es posible que alguna vez te hayan enviado un montón de archivos pero por cualquier razón, tienen una letra mal (En nuestro ejemplo queríamos que la primera letra del nombre de nuestros archivos fuese I pero nos llego como _)
Si tenemos en una carpeta, por ejemplo:
-_MG_1.tif
-_MG_2.tif
-_MG_3.tif
-_MG_4.tif
-_MG_5.tif
-_MG_6.tif
y nosotros lo que queremos es:
-IMG_1.tif
-IMG_2.tif
-IMG_3.tif
-IMG_4.tif
-IMG_5.tif
-IMG_6.tif
La solución es tan fácil como abrir la terminal de linux y usar este comando:

for file in *.tif; do mv -i "${file}" "${file/_/I}"; done

Si tenéis cualquier duda, podéis preguntar en los comentarios.

Google anunció hace aproximadamente un año la mejora «Actions in the Inbox» para poder realizar acciones directamente desde la bandeja de entrada de Gmail. Para usar estas nuevas características hay que usar JSON-LD o microdatos en los emails.

¿Para que sirven las “Action in the Inbox”?
Esta característica implementada por Google en Gmail nos permite que nuestros clientes puedan confirmar su cuenta recién creada en tu web, ver el seguimiento de un pedido e interactuar con nuestros emails sin necesidad de abrirlos, directamente desde la bandeja de entrada.

Actualmente existen dos tipos de acciones, aunque hoy solo os hablaré del primero Acciones In-App. Read more…

OnePlusOne
Pues aquí os traigo fotos del Unpacking de la edición de 64gb del deseado OnePlus One.

Read more…

git

Si te han dado una ip, un usuario y un archivo .pem o .pub y te han dicho, usa GIT en el repositorio ip:turepositorio y no tienes ni idea de por donde empezar, has llegado al lugar correcto.

He escrito este post porque la documentación al respecto es bastante poco clara y para encontrar respuestas hay que empezar a reformular las preguntas de forma que dejen de tener que ver con el objetivo inicial (usar git) y empezar a buscar cosas como «importar claves en ubuntu»

Empecemos por el principio, si no sabes que es GIT, te aconsejo que lo busques en google y te enteres al menos de lo básico.

Una vez que conoces GIT, nos encontramos con un problema, no tenemos una contraseña «de las de toda la vida» del ssh para usar con los comandos de git (tal y como viene documentado por todos sitios)

Read more…

Si tienes el problema de tener que añadir texto que es exactamente igual en todas las celdas de una columna, con estos sencillos pasos te ahorraras tener que ir celda por celda.

 

1)Para empezar buscamos un par de columnas vacías (En el ejemplo presuponemos que es la E y la F)

2)Escribimos en la primera celda de la primera columna (E1) el texto que queramos añadir a modo de prefijo o las palabras que queramos poner (Acuérdate de acabar con un espacio en este caso)

3)Escribimos en la primera celda de la segunda columna (F1) el texto que queramos añadir a modo de sufijo o las palabras que queramos poner (Acuérdate de empezar con un espacio en este caso)

4)Nos vamos a la segunda celda de la primera columna (E2) y ponemos la siguiente formula: (Presuponemos que la columna a la que queremos añadirle texto es A)

=E$1&A2&F$1 Read more…

¿Cual es el problema?

El problema esta relacionado con los paquetes SSL de tipo heatbeat que al estar mal implementado en las últimas versiones de OpenSSL, permitían que modificando el tamaño del paquete se pudiese explotar un desbordamiento de memoria que permite a un atacante leer trozos de la memoria de tu servidor en los que nunca debería haber podido entrar.

¿Qué permite este error?

Permite que un atacante pueda obtener la clave privada de tu certificado SSL permitiendo que en caso de que capturase tráfico desde y hacia tu servidor, pueda desencriptar TODO el tráfico SSL; pasado, actual y futuro (a no ser que lo arregles).

Este error permite también que se pueda obtener otro tipo de información que este en la memoria del servidor (nombres de usuario, contraseñas, emails, etc)

Lo peor de este fallo, es que no queda ninguna traza del atacante, por lo que nunca podremos saber si alguien ha aprovechado este bug en nuestro servidor, por eso hay que crear claves privadas nuevas en nuestros certificados SSL.

 

¿Qué versiones de OpenSSL están afectadas?

Read more…