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. Instalación de los foros YaBB
3. Rotación de banners con CGI
4. Links aleatorios con CGI
Más artículos...

Otros artículos...

PHP Buscador simple en PHP
Java Script Abrir ventana centrada en pantalla
Photoshop Efecto de líneas de TV con Photoshop
phpBB phpBB: Administración general
ASP.net Banners aleatorios con ASP.net
Java Script Menúes de listas despegables con javascript
ASP Haciendo restas entre fechas
Hojas de Estilo Formularios basados en retículas CSS
PHP Instalación de PHP-Nuke bajo Windows
Servidores Instalación de phpdev en Windows
Más artículos...