Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/11/2011, 10:13
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: configuracion cgi-bin en apache

En primer lugar a
Cita:
PHP5, MySQL5, PHPmyadmin, Postgres8.4,,,
Deberías agregarle la instalación de Perl (http://www.activestate.com/activeperl/downloads)


La carpeta cgi-bin tiene una característica especial en la instalación por defecto de Apache, es una carpeta dónde todo se ejecuta, por lo que allí solo podrias poner tus pl y ó Cgi, y está definida como un alias con la directiva
ScriptAlias /cgi-bin/ "/www/cgi-bin/"
Podrías ubicarla incluso por fuera de www., y dado que alli tood se ejecuta no podrias poner alli imagenes u otro contenido.

Para poder procesar tus cgi, pl fuera de cgi-bin, en www ó uno de sus subdirectorios, tenes que agregar
Options +ExecCgi, ya sea a traves de un bloque directory en httpd.conf o directamente en .htaccess

Para ambos casos tenes que tener habilitado
AddHandler cgi-script .cgi .pl .py
(en mi ejempo tambien habilité las scripts de Phyton.

Un último detalle, cuando instales ActivePerl, asegurate de dejar la opción que dice algo como
"agregar extensiones al registro de windows" (eso hace que las scripts pl se asocien al ejecutable perl.exe), creo que por defecto no lo hace para la extensión cgi, asi que tenes que hacerlo manualmente y que en el archivo /conf/extra/Perl.conf esté habilitado
ScriptInterpreterSource Registry
Esto es importante para que no tengas que modificar la ruta a perl en tus scripts, la script

Código Python:
Ver original
  1. #!/usr/bin/perl.exe
  2. ##
  3. ##  printenv -- demo CGI program which just prints its environment
  4. ##
  5.  
  6. print "Content-type: text/plain; charset=iso-8859-1\n\n";
  7. foreach $var (sort(keys(%ENV))) {
  8.     $val = $ENV{$var};
  9.     $val =~ s|\n|\\n|g;
  10.     $val =~ s|"|\\"|g;
  11.     print "${var}=\"${val}\"\n";
  12. }

va a funcionar aun cuando no exista
#!/usr/bin/perl

y te va a facilitar las cosas si subis esa script a tu servidor web en internet

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.