CGI - Por qué sucede?

 
Vista:

Por qué sucede?

Publicado por Jonathan (1 intervención) el 30/08/2002 18:27:42
Hola, soy aprendiz de Perl Con IIS en W2000 y necesito saber como solucinar este error:

Error CGI
La aplicación CGI especificada puede comportarse de forma anormal si no recibe un conjunto completo de encabezados HTTP. Los encabezados retornados son:

Can't locate config.cgi in @INC (@INC contains: C:/Perl/lib C:/Perl/site/lib .) at C:\Inetpub\wwwroot\cgi-bin\mmlm\elist.pl line 15.

De antemano gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Solución para el error "Can't locate" en CGI con IIS en Windows

Publicado por Alejandro (140 intervenciones) el 23/08/2023 20:26:46
El error que estás viendo, "Can't locate config.cgi in @INC", indica que Perl no puede encontrar el archivo `config.cgi` en las rutas de búsqueda especificadas. Para solucionar este error, aquí hay algunos pasos que puedes seguir:

1. Verifica la ruta del archivo: Asegúrate de que el archivo `config.cgi` se encuentre en la ubicación correcta. En este caso, parece que se espera que el archivo esté en la misma carpeta que el archivo `elist.pl`.

2. Verifica las rutas de búsqueda (@INC): El mensaje de error muestra las rutas en las que Perl está buscando los módulos y archivos. Verifica que la ubicación del archivo `config.cgi` esté dentro de esas rutas. En tu caso, parece que el archivo `config.cgi` debe estar en la misma carpeta que `elist.pl`, o puedes agregar la ruta de la carpeta donde reside `config.cgi` al `@INC` de manera adecuada.

3. Verifica los permisos de acceso: Asegúrate de que tanto el archivo `elist.pl` como `config.cgi` tengan los permisos adecuados para ser leídos y ejecutados por el servidor web (IIS en este caso).

4. Usa rutas absolutas: En tu script `elist.pl`, asegúrate de que estés usando rutas absolutas para acceder a archivos y módulos. Puedes usar módulos como `Cwd` para obtener la ruta absoluta del directorio actual y luego construir rutas a los archivos desde allí.

Aquí hay un ejemplo de cómo podrías usar el módulo `Cwd` para incluir un archivo con una ruta absoluta:

1
2
3
use Cwd qw(abs_path);
my $ruta_absoluta = abs_path("config.cgi");
require $ruta_absoluta;

5. Verifica configuraciones de IIS: Asegúrate de que la configuración de IIS esté adecuadamente establecida para ejecutar scripts CGI y que estés accediendo al script a través de la URL correcta.

Si sigues teniendo problemas, puede ser útil proporcionar más detalles sobre la estructura de tus archivos y cómo se está llamando al script CGI.

Recuerda que esta respuesta se basa en la información proporcionada y puede requerir ajustes según la estructura y configuración específicas de tus archivos y sistema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar