Está usted en Indice > Construcción > Lenguajes > Perl > Lecciones y Paso a Paso > Redirección de acuerdo a la resolución de la pantalla en Perl
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

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

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

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.

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).

Autor: Blasten
http://www.blasten.com/contenidos/19144



Usuarios que han visto este tema también han visto...

- Contador de visitas con Perl
- Ejemplos en perl.
- ¿Cómo enviar emails usando Perl y Sendmail?
- Leer documentos via HTTP
- Envío de email con Perl y Linux


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 06-07-2008 a las 02:19:59