Condiciones en mod_rewrite para la redirección

magia potagia Condiciones en mod rewrite para la redirección

El denominado mod_rewrite es el módulo para el servidor web Apache que permite a nuestro servidor el uso de enlaces semánticos también denominados enlaces limpios o permalinks, por ejemplo:

http://www.dedavid.com/area/Aplicaciones+web/Programa+de+facturacion

en lugar de :

http://www.dedavid.com/?area=12&_id=244

Condiciones y excepciones para la redirección

Ahora bien, en ciertas ocasiones podemos necesitar lo utilizar ciertas excepciones. Por ejemplo cuando partiendo de un dominio queremos tener dos específicos, donde nos interesa redireccionar al nuevo dominio sólo cuando se consulta determinada página o cuando la URL contiene ciertos parámetros.

En los siguientes trozos de código definimos excepciones para que no se ejecute un redireccionamiento si se cumple la condición.

Este código que debe introducirse, al igual que todas las reglas y reescrituras deseadas en el fichero .htaccess que debe hallarse en la raíz de tu servidor web.

Ejemplos de redirección por llamada a fichero html y por valor de variable en la URL

Vamos con el primero donde si la página llamada es programas-facturacion.html direccionamos al dominio invOOice.com

RewriteCond %{REQUEST_URI} =/programas-facturacion.html
RewriteRule ^(.*)$ http://invOOice.com/$1 [R=301]

En la condición puedes utilizar los típicos comparadores aritméticos “=” para condicionar si es igual o  “!=” para que se cumpla la redirección si no es igual.

Vamos ahora a por la segunda excepción, en este casi mirando la URL en lugar del nombre del archivo al que se llama, esto nos servirá para condicionar comportamiento atendiedo a las variables que contenga la URL:

RewriteCond %{QUERY_STRING} =21
RewriteRule ^(.*)$ http://invOOice.com/$1 [R=301]

Crear el fichero .htaccess en un servidor Windows

Cómo curiosidad y apunte comentaremos que si bien este tipo de archivos .htaccess es fácil crearlo bajo entornos Linux, existe una gran dificultad para su creación en sistemas operativos Windows porque no permiten crear archivos sin nombres ya que Windows entiende que .htaccess es únicamente un tipo de archivo o extensión, así que si tu servidor web es Windows deberás crearlo utilizando la siguiene triquiñuela, un comando de PHP que nos generará el archivo, luego para editarlo con un editor como Notepad++ (programa gratuito) será suficiente:

<?php
touch('.htaccess');
?>

Posicionamiento en buscadores

Por último y no menos importante recalcar el gran valor que representa el uso de enlaces limpios en el posicionamiento en internet, a modo de ejemplo podemos citar que en la web de cablematic.com, cliente al que le proporcionamos servicio de posicionamiento hemos conseguido un incremento del 50% en el volumen de visitas tras el uso de este sistema de enlaces en su tienda online.

Base de datos Cassandra

cassandra database 480x372 Base de datos Cassandra

Migración de grandes hacia Cassandra db

Por la red ha saltado la alarma ya que Twitter pretende migrar al sistema de base de datos Cassandra, hasta la fecha los de Twitter confiaban en la base de datos mysql con un complejo sistema de Twitter.

No es la primera compañía que migra hacia Cassandra tras la adquisición de MySQL por Oracle, un movimiento que no ha sido del agrado de prácticamente ningún desarrollador, además con estos movimientos tan sólo acrecentamos el temor de que Oracle acabe ahorcando el proyecto libre MySQL en favor de sus sistemas de bases de datos de pago.

La base de datos Cassandra fue liberada por Facebook en el año 2008, en la actualidad es usada por servicios web de alto tránsito y de alta actividad en cuanto a base de datos se refiere, nombres como Rackspace, Digg, Facebook, Cisco, etc son algunas de las compañías que ya trabajan bajo Cassandra el echo de que muchas redes sociales de gran renombre la utilicen es garantía de su funcionalidad pues bien es sabido que tanto Twitter como Facebook y Digg son las aplicaciones web que mueven un mayor volumen de registros de bases de datos.

Características destacadas de Cassandra

Cassandra DB dispone de algunas características muy interesantes entre las que destacamos:

Tolerancia a fallos

Los datos son replicados en múltiples nodos de forma que si falla uno el sistema es capaz de leer los datos desde cualquier otro nodo sin problema alguno sin ningún tipo de downtime o tiempo de espera, elevando así el tiempo de operatividad muy por encima de MySQL.

Descentralización de los datos

Todos los clusters que conforman una base de datos disponen de la misma información por lo que los datos están replicados y se encuentran en todos los puntos aportando toda la ventaja que implica la descentralización de los datos.

Modelo de datos avanzado

Cassandra dispone de lo que se denomina un Rich Data Model es decir un sistema eficiente y simple para la ejecución de consultas a la base e datos.

Elasticidad

Te permite leer y escribir simultáneamente sin interrupciones.

Requerimientos de Cassandra

Servidor Apache, 1Gb. de mínimo de memoria RAM bajo entornos virtualizados, si el hardware es dedicado debería ser superior a 4Gb. de todas formas es habitual encontrarse cluster con 16 y 32 Gb. de memoria RAM.

A nivel de CPU Cassandra trabaja de forma excelente con sistemas multi-núcleo así que a mayor número de cores, mayor rendimiento. Así pues si precisas de un gran rendimiento, no te cortes y tira por sistemas de cuatro u ocho núcleos.

Capacidad de disco, ideal 2 discos por cada cluster, en uno se almacena el llamado CommitLogDirectory o fichero de registro de activicidad (log) y en el otro los datos o DataFileDirectories.

Sistema operativo, lo mejor un sistema operativo de 64bits, a mayor estabilidad mejor rendimiento. Por supuesto, Unix o Linux, incluído Mac OSX.

Enlace: http://incubator.apache.org/cassandra/

Estructuras redimensionables para iPhone

framework web iphone Estructuras redimensionables para iPhone

Bueno, aunque el título reza que lo que hoy te traemos es exclusivo para iPhone, más bien es para cualquier tipo de dispositivo que disponga digamos de una pantalla especialmente pequeña o con unas proporciones diferentes a las habituales, incluídos los Androids, los aburridos Windows Mobile 7 y las gorditas Blackberries.

Se trata de un framework (un framework es una estructura de trabajo predefinida y un pequeño conjunto de utilidades básicas para el desarrollo enfocado) desarrollado bajo html 5 y compatible con casi todos los navegadores modernos y con el que gracias a él te podrás olvidar de las diferentes resoluciones para los diferentes dispositivos pues con este framework la web detecta la resolución de pantalla y autoadapta el contenido para que se visualice de forma óptima en el dispositivo lo que representa una clara mejora en la usabilidad de cualquier página web, blog  o aplicación web.

Este framework está compuesto por un par de ficheros CSS, un javascript y una forma de maquetar el encolumnado mediante CSS. Aún no hemos podido ponerlo en práctica por nosotros mismos pero en la web que enlazamos, la de sus creadores, puedes jugar a resizar (redimensionar) la ventana del navegador y ver como el contenido se adapta de forma perfecta a cualquier tamaño y proporción.

Aquí tenéis, listo para bajar un archivo zipeado con los ficheros del framework y un ejemplo: Framework web para iPhone (1)

Enlace: http://lessframework.com/

Plantilla Wordpress optimizada para adSense

super raton Plantilla Wordpress optimizada para adSense

Hoy os traigo un experimento, se trata de una hackeo muy casero de una conocida plantilla para el sistema de blogs Wordpress. La imagen que acompaña a este post no es del todo apropiada porque lo que buscamos es un superclick y no un superatón, es decir nuestro objetivo hoy es conseguir el mayor número de clicks hasta reventar el CTR o clicktrought de Google adSense con nuestra página optimizadísima para adSense.

En capítulos anteriores, nuestro super ratón que no es otro que nuestro blog experimental:

Blog de iPhone

Conseguía un triste 0,87 clicktrought lo que nos equivale a 0.90 CPM ganancias por cada mil impresiones de anuncios. Con eso no tenemos ni para el hosting, ahora bien: ¿conseguirá super ratón llegar al soñado 20% de CTR?

Modificaciones en la plantilla para optimizarla de cara a adSense

Esta plantilla es muy sencilla, dispone de un sistema de dos columnas y un fondo 100% estilo iPhone. La llevamos aplicando hace ya algún tiempo en uno de nuestros blogs experimentales.

plantilla wordpress optimizada para adsense 480x374 Plantilla Wordpress optimizada para adSense

Dejamos a la vista anuncios textuales, excepto en el menú

Primero probamos hackeando el template e introduciendo un sistema de 4 columnas, el resultado era un sistema de menú más tres columnas con anuncios “Sólo de texto” en formato 160 x 600, de esta forma a excepción del menú lateral izquierdo todo eran posibles clicks pero no nos ha funcionado, la gente, los usuarios son demasiado listos y ya empiezan casi todos a diferenciar casi sin mirar, adSense de contenido real.

Podríamos integrar en la primera columna la que tiene el menú del blog una nueva tira de anuncios de texto, pero no,  no es posible pues adSense sólo permite 3 bloques de anuncio por página como máximo, también pensamos en pasar a un sistema de tres columnas en lugar de cuatro pero Google no dispone de ningún banner largo más ancho de 160 píxeles por lo que entonces el sistema cantaba en exceso, si bien podríamos haber incorporado una cuarta columna falsa y sin ser clickable decidimos dejar pasar el tiempo haber si ese CTR mejoraba. Un pimiento frito, eso es lo que podríamos haber comprado, aceite de oliva no incluído, con las ganancias por publicidad del mes de enero de este año.

Por fin hemos visto la luz, y hoy hemos cambiado nuestro sistema de optimización, ahora utilizamos sólo banner gráficos para las tres columnas y tres bloques de enlaces para el menú, con los banners gráficos la mosca de Google queda siempre abajo, de momento, y hemos eliminado esos primeros enlaces del propio block, ahora son enlaces patrocinados porque Google te permite 3 bloques de anuncios y 3 bloques de enlaces simultáneamente, posiblemente consigamos alguna mejora en el CTR, ya te lo comentaremos.

Camufla la publicidad todo lo que puedas

El sistema de los banner verticales extralargos no tiene otro objetivo que ofrecer más zona de click antes del scroll de la página, y si es posible en resoluciones de pantalla populares que la molesta mosca cojonera de “Anuncios de Google” o “Ads by Google” para las webs de lengua inglesa quedase fuera de la zona visible.

Transcurrido un tiempo, creemos que Google se percató y sí o sí pone su marca ahora siempre arriba en los banners de textos así que el sistema duró bien poco, volvemos al símil del ratón de la imagen que acompaña este post y curiosamente si nosotros seguimos siendo el ratón adivina quien es el perro, o era el gato, no se, esto de los refranes siempre me falla, tan sólo quería nuevamente alzarme contra Google.

Soñarás con esa mosca, cojonera donde las alla, pues por mucho que la intentes camuflar cambiando los colores de fondo, el estilo de letra, etc no conseguirás nada, porque esa maldita mosca de Google estropea cualquier intento, y no la intentes tapar con un div “position:absolute” por encima porque en menos de lo que piensas recibirás una advertencia de la todopoderosa, nosotros lo hemos intentado incluso con un sistema inteligente que era la repera y contemplaba 10 factores antes de tomar la decisión de taparla, navegador, sistema operativo, ip de origen, incluso la hora, las páginas vistas para al final generar un random del estilo número de 0 a 100 sólo si es mayor de 60 me tapas la mosca. Pero nada, recibimos un misterioso email amenazante.

Ser pequeño es lo que tiene, que tienden a ningunearte

Que diferencia resultaría para nosotros los pequeños si la todopoderosa nos permitiese cambiar ese texto por un “Enlaces Patrocinados” tal y como lo hace con las grandes cuentas, que lo hace con muchas de esas que tienen impresiones a patadas. ¡Maldito poder!

Un sistema que cumple con los requerimientos de adSense

No se si eres un publisher como nostros, es decir te dedicas a generar contenido y postearlo o sencillamente sindicas lo que dicen otros. Si es así lo más probable es que integres la fórmula adSense entre tus intentos de amortizar el esfuerzo e inversión que puede llegar a representarte tener tu blog al día.

Posiblemente conozcas aunque sea algo por encima las limitaciones de adSense, su política o requirimientos para que no te encuentres tu cuenta bloqueada de un día para otro.

Si bien podemos decir que nuestro sistema es totalmente legal, admitimos que roza todos los límites y es poco o nada considerado con el usuario su usabilidad es cero pelotero, viniendo a ser prácticamente como una página capturadora de clicks al más puro estilo de un parking de dominios de SEDO pero con contenidos 600 píxeles más abajo.

La fórmula es 3 + 3, o lo que es lo mismo tres bloques de enlaces más tres bloques de enlaces.

Sólo nos queda un paso, cambiar el cajetín de búsqueda por un bloque de búsqueda de Google.

Como podeis ver nuestro blog experimental ha vendido su alma a Google, lo que hay que hacer para entretenerse… pruebas, bienvenidos a la nueva categoría del “El gato y el ratón”

Forzar la aparición de las barras de scroll con CSS

barra de scroll Forzar la aparición de las barras de scroll con CSS

En alguna ocasión te encontrás el siguiente escenario donde en determinados proyectos existe una clara molestia visual producida por los constantes salto en la maquetación del contenido que se desplaza unos 20 píxeles hacia tu izquierda al navegar entre una página y otra.

Este salto es normalmente producido por la existencia o no existencia de la barra de desplazamiento vertical o barra de scroll, una barra que quieras o no ocupa su espacio en el universo y como dice un tal arquímedes con su teoría sobre los líquidos esta barra desplaza el contenido tantos píxeles como volumen tiene la misma.

Aunque si bien este es un comportamiento natural, predecible y argumentable hacia tus clientes, el efecto que produce ese desplazamiento de contenidos es del todo indeseado y más aún cuando suele suceder desde la propia página de inicio o home donde muchos maniáticos de la comunicación, entre los que me incluyo, quieren poco texto poco espacio para evitar un exceso de información e invitar al cliente a profundizar, en páginas con más contenido y por tanto con la dichosita barra de scroll.

Pues bien, hemos acudido al dios salvador, que no es otro que el CSS y tachán la solución en tres líneas, y tan fácil como forzar la aparición de las barras sí o sí.

El código CSS:

html {
/* forzado de scrollbars */
min-height: 100%;
margin-bottom: 1px;
}

Página 1 de 3123