Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » Problema añadiendo path en @INC en Apache2 Responder al tema
Nuevo tema


Página 1 de 1  [ 5 mensajes ] 
 
Nota 2008-10-09 03:54 @204

Perlero Nuevo
Registrado: 2008-07-28 06:13 @301
Mensajes: 44
Problema añadiendo path en @INC en Apache2
Hola,

A ver si me podéis ayudar con un problema que no tengo manera de resolver: Acabo de instalar RedHat Linux 5 en un servidor Dell. Ahora me tocaba configurar Apache2 para visualizar una serie de páginas que acceden a una base de datos local. El caso es que la página de inicio tiene que ejecutar un script Perl el cual es de elaboración propia y se encuentra en un determinado path: "/var/www/cgi-bin".

El caso es que cuando intento cargar la página, me sale el siguiente error en el log de Apache:

Código:
Cant't locate xxx.pm in @INC(....).


Dentro del paréntesis de @INC aparece una lista con todos los paths que contiene.

Para solucionar esto, en el código del script que usa mi módulo, he agregado el path donde se encuentra dicho módulo y le he dado todos los permisos necesarios. El código que he puesto al principio del script es:

Código:
BEGIN{ push(@INC,'/var/www/cgi-bin');};


El path donde están el script y el módulo es el mismo.

El caso es que me sigue dando el mismo error a pesar de que en el log de Apache, al sacar la lista de @INC con todas las rutas que mira para buscar el módulo, APARECE la que le he puesto, pero es como sino la leyera.

Es como si Apache no "refrescara" la @INC y solo leyera los datos que se cargan por defecto.

¿Alguna ayuda?

¡Gracias!


Nota 2008-10-09 08:20 @389
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10270
Perl también tiene en el @INC el propio directorio (.), así que es muy raro que no lo encuentre, salvo que sea un fallo de permisos del fichero, que no permita leer al usuario que ejecuta el servidor web.

Dale permisos 644 al módulo.

_________________
JF^D Perl programming


Nota 2008-10-09 09:22 @432

Perlero Nuevo
Registrado: 2008-07-28 06:13 @301
Mensajes: 44
Eso fue lo primero que hice:

Syntax: [ Download ] [ Hide ]
Using bash Syntax Highlighting
chmod 777 *


Leí que el problema más común era ese, pero nada, sigue sin funcionar.

He leído más cosas sobre modificar @INC, pero todas usando perl_mod, y en mi caso estoy intentando ejecutar en cgi... lo único que se me ocurre es que sea por motivos de seguridad o algo, pero no sé...


Nota 2008-10-09 12:40 @569
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10270
Te aconsejo que pongas el módulo CGI::Carp al principio del programa, para ver si el servidor web da más información.

Mira mi CGI mínimo para ver cómo usarlo.

La forma básica de modificar @INC es como lo has hecho antes, o usar el pragma lib.

¿No estará influyendo otras líneas del programa?

_________________
JF^D Perl programming


Nota 2008-10-19 12:13 @551

Perlero Nuevo
Registrado: 2008-07-28 06:13 @301
Mensajes: 44
Bueno, ¡puedo al final contestar con buenas noticias! Cuento cómo se solucionó el problema.

Todos estos problemas aparecían en un servidor Apache que se encontraba en un RedHat 5 recién instalado. El problema de modificar @INC era solo uno de ellos: tampoco se podían ejecutar cgi o cambiar el nombre de la página index.html. Después de trastear durante varias horas por el archivo de configuración de Apache y de pensar que los problemas no estaban entre ellos todos relacionados, resultó ser una tontería, aunque como todas las tonterías, si no las conoces, te fastidian.

EL caso es que RedHat 5 viene por defecto con un sistema de seguridad activado. Este sistema se llama SELinux, y tiene una serie de reglas muy restrictivas. Mirando más tarde en la Wikipedia resulta que estas restricciones son usadas hasta por el departamento de seguridad de los EEUU. Así que para solucionar los problemas solo basta con desactivar esta opción, que se encuentra en la misma ventana que el cortafuegos.

En fin, ¡espero que si le pasa a otra persona, pueda leer esto!

Saludos.


Responder al tema  [ 5 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO