• Publicidad

Redireccionar a una pagina de error.

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

Redireccionar a una pagina de error.

Notapor rorris » 2005-07-31 17:31 @771

Buenas de nuevo. Quiero redireccionar desde una pagina de mi sitio a una de las paginas de error de apache, es decir, comprobar una serie de cosas y en funcion de ellas, "engañar" al usuario redireccionandole a una pagina de error ("Internal Server Error", por ejemplo) cuando en realidad no hay ningun error. Supongo que eso no sera muy complicado hacerlo, pero he probado varias cosas y no he dado con la solucion.

Gracias, mil gracias.
rorris
Perlero Nuevo
Perlero Nuevo
 
Mensajes: 21
Registrado: 2005-06-14 18:01 @792

Publicidad

Notapor kidd » 2005-07-31 18:06 @796

Hola:

Es muy sencillo lograr eso usando el módulo CGI.

Código: Seleccionar todo
use CGI qw(:standard);

print header('text/html','501 Server Error');


El primer párametro que mandas es el el content-type text/html el segundo párametro es el status 501 Server Error, que puede ser cualquiera de los "status codes" de http:
http://www.helpwithpcs.com/courses/html ... _codes.htm


SALUDOS
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1165
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor rorris » 2005-08-08 12:36 @566

No funciona. No sale ningun error pero no redirige a la pagina de error, sale en blanco.

Les muestro mi script:

use CGI qw/:standard/;

print header('text/html','501 Server Error');
exit;

Gracias.
rorris
Perlero Nuevo
Perlero Nuevo
 
Mensajes: 21
Registrado: 2005-06-14 18:01 @792

Notapor Perl user » 2005-08-09 15:44 @697

rorris escribiste:No funciona. No sale ningun error pero no redirige a la pagina de error, sale en blanco.

Les muestro mi script:

use CGI qw/:standard/;

print header('text/html','501 Server Error');
exit;

Gracias.


Por qué mejor no creas una pequeña página personalizada de error y lo redirecciones hacia ella? Es una solución limpia y sencilla:

Código: Seleccionar todo
use CGI qw( :standard );

print redirect( -uri => 'http://foo.com/bar.html',
                -nph => 1,
                -status => 301
              );


o simplemente:
Código: Seleccionar todo
print redirect( 'http://foo.com/bar.html' );


Saludos,
Marco A. Manzo
amnesiac@unixmonkeys.com
http://www.unixmonkeys.com/amnesiac/
Perl Programming Language
Perl user
Maestro Honorario
Maestro Honorario
 
Mensajes: 271
Registrado: 2004-11-03 21:11 @924


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado