Página 1 de 1

[Solucionado] Script corre en consola pero no en navegador

NotaPublicado: 2013-09-24 19:52 @870
por bAsTeR
Tengo un problema con algunos de mis códigos, que pueden correr desde consola, pero si intento acceder desde un navegador me muestra "Internal Server Error". Al verificar el log de errores, veo que no puede encontrar un módulo que yo mismo hice. Está en una carpeta y me dice que no lo encuentra "EXO/Com.pm".

Estoy trabajando en Mountain Lion (OSX) por si es un dato de utilidad.

Alguien habrá pasado por la misma situación o tiene idea de qué pueda estar pasando. Se los agradeceré, ya que no logro encontrar la solución.

Gracias de antemano.

Re: Mi script corre en consola pero no desde el navegador

NotaPublicado: 2013-09-24 20:05 @878
por explorer
Si el módulo ESO::Com no está en ninguno de los directorios indicados por la variable especial @INC, entonces deberás usar

use lib 'ruta del directorio';

antes del

use ESO::Com;

Re: Mi script corre en consola pero no desde el navegador

NotaPublicado: 2013-09-24 20:13 @884
por bAsTeR
Funcionó para quitar el error del módulo, lo malo es que tendría que poner esa línea en todos mis scripts.

El problema ahora surge en otro lado, estoy usando Template Toolkit y ahora me dice que no está encontrando el archivo html. Tengo que poner la ruta también en esa parte y eso no es muy agradable porque a la hora de subir los archivos al servidor tendré que cambiar todo otra vez.

¿Crees que pueda ser alguna configuración del Apache porque esos códigos me funcionan en el servidor sin siquiera poner la línea de "use lib".

Re: Mi script corre en consola pero no desde el navegador

NotaPublicado: 2013-09-24 21:29 @936
por bAsTeR
Ya encontré la solución, era en el httpd.conf, en vez de usar

Sintáxis: [ Descargar ] [ Ocultar ]
  1. AddHandler perl-script .pl 
  2. PerlResponseHandler ModPerl::Registry 
  3. Options ExecCGI 


Tenía que usar

Sintáxis: [ Descargar ] [ Ocultar ]
  1. AddHandler cgi-script .pl 
  2. Options ExecCGI 


Y listo, porque me tomaba la ruta desde el subdirectorio donde estaba el módulo de ModPerl::Registry.

Gracias.