• Publicidad

Empezando con cgi

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

Empezando con cgi

Notapor ellen » 2007-05-10 08:36 @400

Hola a todos,

Soy nueva en el mundo de Perl y ya empiezan los problemas; espero que alguien pueda ayudarme. He intentado el script más sencillo, mostrando el típico Hello world. Si ejecuto el script desde el ssh (necesito conectarme al servidor de la universidad) funciona. Sin embargo, si lo ejecuto desde el navegador, me da error 500 Internal Server Error. He hecho algún que otro script, todos los he compilado con "perl -wc" y la sintaxis está bien.

He probado con el cgi mínimo que he visto en el foro y no me muestra nada en el navegador. Los permisos están bien, el directorio también.

¿Alguien me puede dar una pista de lo que puede pasar?
¡Gracias!
ellen
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2007-05-10 08:19 @388

Publicidad

Notapor monoswim » 2007-05-10 08:49 @409

Para el navegador, el script debe enviar una primera línea de cabecera que es

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
print "Content-type: text/html\n\n";

# ahora sí
print "Hola mundo";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Saludos
MonoSwim
Perl Programming Language
Avatar de Usuario
monoswim
Perlero nuevo
Perlero nuevo
 
Mensajes: 452
Registrado: 2003-11-18 16:13 @717
Ubicación: Buenos Aires

Notapor explorer » 2007-05-10 08:51 @410

Bienvenida a los foros de Perl en Español.

Si estás usando este CGI mínimo y no sale nada en pantalla, es que falla algo.

¿Tienes acceso a los registros de actividad del servidor web? Ahí vendrá el motivo.

Sería deseable ver el código que estás usando para esa primera prueba.

Un fallo 500 como el que indicas puede ser, por ejemplo, que no sacas la cabecera HTTP de respuesta antes de la salida normal del programa (el Content-Type: .... Pero también puede ser que el servidor web no tenga permisos de ejecución del script...

Repito... todo eso está en los registros de actividad del servidor web.

Si no tienes acceso a ellos, instálate un servidor web en tu ordenador y haz las pruebas en local y así tendrás tus propios registros log.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor ellen » 2007-05-10 08:58 @415

Gracias por vuestras respuestas. El código del test.cgi es:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!usr/local/bin/perl
print "Content-type: text/html\n\n";
print "<html><head><title>CGI-ejemplo</title></head><body>";
print "Hello World! <br>";
print "</body></html>";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


No, no tengo acceso a los logs. En cuanto a que el servidor no tenga los permisos de ejecución... ¿te refieres a que el servidor no ejecuta cgi's? Según me dijeron sí lo hace, ya que es un servidor de desarrollo de mi universidad preparado para ello.
ellen
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2007-05-10 08:19 @388

Notapor explorer » 2007-05-10 09:07 @421

Ese script no tiene problemas... salvo que en la primera línea apuesto a que no es

Código: Seleccionar todo
#!usr/local/bin/perl

sino
Código: Seleccionar todo
#!/usr/local/bin/perl
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor ellen » 2007-05-10 09:13 @425

Muchísimas gracias explorer, ¡ya funciona! Es increíble como a veces no vemos un fallito así... Ya me estaba volviendo loca, jaja. ¡Gracias!
ellen
Perlero nuevo
Perlero nuevo
 
Mensajes: 5
Registrado: 2007-05-10 08:19 @388


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados