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/

Aplicación web PHP para backup de mysql

aplicacion web de copias de bases de datos 480x319 Aplicación web PHP para backup de mysql

Sypex Dumper es una aplicación web de código abierto escrita en lenguaje PHP para establecer completos sistemas de copia de seguridad de bases de datos MySQL. Funciona en capa web y por tanto es multisistema.

Esta aplicación web está construída con PHP y posee una potente interface Ajax. Gracias a los sistemas que incorpora permite no tener que preocuparse de timeouts ni limites de archivos tan típicos como el max upload limit del PHP, unos problemas que vienen siendo muy habituales entre los webmasters a la hora de mover bases de datos por la red.

El código se encuentra muy optimizado y es más de 5 veces más rápido en exportar una base de datos que otros métodos hasta ahora más tradicionales como phpMyAdmin, MySQL Front, Heidi o incluso los conocidos scripts mysql dumper.

Enlace: http://sypex.net/en/products/dumper/about/

Saber el uptime en Windows

comando uptime Saber el uptime en Windows

El uptime es el tiempo que una máquina lleva encendida desde la última vez que el sistema operativo arrancó con éxito, en los sistemas operativos Linux el comando uptime nos da esa información y algo más nos proporciona el número de usuarios que se han logado en la máquina, y la carga media que ha tenido en los últimos minutos.

uptime en linux 480x333 Saber el uptime en Windows

Esta información es muy útil en las comprobaciones de estabilidad de un servicio web así como ante los cambios de configuración y securización de un sistema servidor.

En Windows 2003 Server no existe el comando uptime como tal, pero podemos hacer una equivalencia, así que si quieres conocer el tiempo que lleva tu servidor funcionando desde la última vez que lo arrancaste, tan sólo deberás abrir un Terminal de sistema, o ventanita de MS-DOS, como prefieras llamarla a través de INICIO > EJECUTAR escribe CMD y pulsa enter.

Ahora introduce el siguiente comando:

net statistics server

y pulsa la tecla INTRO.

Te aparecerá una pantalla como la que te mostramos a continuación:

uptime de windows 480x332 Saber el uptime en Windows

En la captura puedes ver “Estadísticas desde 11/02/2010 21:04″ pues bien, ahora resta hasta el día de hoy y sabrás el uptime que tiene tu servidor bajo Windows 2003 Server. Si bien suponemos que este comando funciona para cualquier sistema operativo Windows, incluídos Windows XP, Vista, Windows 7 y Server 2008 no hemos parado a comprobarlo.

Optimizar bases de datos Mysql

optimizar bases de datos mysql 387x479 Optimizar bases de datos Mysql

Hoy que los servidores virtuales y servidores privados están muy de moda vamos a aprender que es lo que debemos realizar para optimizar el motor de bases de datos Mysql.

Con dos sencillos comandos en la terminal de tu servidor web podrás obtener un sabio consejo para optimizar el rendimiento de tus bases de datos Mysql. Estos comandos te descargan un script en perl y con el siguiente lo ejecutas.

wget mysqltuner.pl
perl mysqltuner.pl

Deberás de proporcionar al script la información que te solicita, esta es usuario de administración de mysql y la correspondiente clave, a partir de hay en unos segundos te mostrará los sabios consejos para que tu servidor funcione algo más ligero.

Enlace: http://blog.mysqltuner.com/download/

Página 1 de 512345