ARTICULOS

Redirección de acuerdo a la resolución de la pantalla

Autor: Fabian Muller (http://www.webexperto.com) - 18/06/2002

Del.icio.us Facebook Technorati

Dadas las incompatibilidades de los distintos navegadores, muchos webmasters optan por crear un sitio para cada navegador. En vez de hacerle elegir al visitante que navegador posee, les mostramos el siguiente script escrito en Perl que detecta el navegador y automáticamente redirecciona al sitio correspondiente:

#!/usr/local/bin/perl

Esta es la primera línea, es donde se encuentra el compilador de Perl en el servidor. Si no sabes donde está instalado escribe el siguiente comando bajo una terminal Unix/Linux: which perl.

($TEST = $ENV{'HTTP_USER_AGENT'});

La siguiente línea detecta el navegador del usuario (con http_user_agent) y almacena su nombre en la variable $TYPE.

$netscape_3 = "http://www.yoursite.com/netscape3/";
$netscape_4 = "http://www.yoursite.com/netscape4/";
$iexplorer = "http://www.yoursite.com/ie/";
$lynx = "http://www.yoursite.com/lynx/";
$aol = "http://www.yoursite.com/aol/";

Estas 5 líneas guardan la url de cada una de las url para cada navegador.

$browser = $netscape_3 if $TEST =~ /Mozilla/3/;
$browser = $netscape_4 if $TEST =~ /Mozilla/4/;
$browser = $lynx if $TEST =~ /Lynx/i;
$browser = $iexplorer if $TEST =~ /microsoft/i;
$browser = $aol if $TEST =~ /aol/i;

Como dijimos anteriormente, nosotros seteamos a $TYPE con el tipo de navegador del usuario. Y guardamos dentro de $browser.

print "Location: $browser ";

Está línea redirecciona a la página del navegador detectado, el cual se guardó en la variable $browser.

El código completo

#!/usr/local/bin/perl

($TEST = $ENV{'HTTP_USER_AGENT'});
$mysite = "http://www.urldetusitio.com";
$netscape_3 = "$mysite/netscape3/";
$netscape_4 = "$mysite/netscape4/";
$iexplorer = "$mysite/ie/";
$lynx = "$mysite/lynx/";
$aol = "$mysite/aol/";

$browser = $netscape_3 if $TEST =~ /Mozilla/3/;
$browser = $netscape_4 if $TEST =~ /Mozilla/4/;
$browser = $iexplorer if $TEST =~ /microsoft/i;
$browser = $lynx if $TEST =~ /Lynx/i;
$browser = $aol if $TEST =~ /aol/i;

print "Location: $browser "; exit();

Ahora simplemente guarda el script en un archivo llamado index.cgi y dale los permisos necesarios para su ejecución (chmod 755 index.cgi).

 

Más artículos sobre CGI

1. Redirección de acuerdo a la resolución de la pantalla
2. Rotación de banners con CGI
3. Instalación de los foros YaBB
4. Links aleatorios con CGI
Más artículos...

Otros artículos...

ASP Obteniendo números aleatorios
ASP Llenar un listbox a partir de una base de datos
Java Script Tres métodos para redireccionar una página
Java Script Seleccionar y copiar formulario
PHP Proteger páginas con password en PHP
Bases de Datos Exportar datos de MySQL a Access
Flash Evitar activación de Flash en IE
Hojas de Estilo Formularios accesibles XHTML y CSS
Java Script Efecto "terremoto" en el navegador
Hojas de Estilo Crear página centrada sin usar tablas
Más artículos...