Error al correr cgi en python

aNgel rEsendiz g. sonajadiabolica en gmail.com
Lun Nov 6 18:05:02 CET 2006


Que tal.

   Solo alcarar algunas cosas. El archivo /etc/apache2/httpd.conf ya
no se utiliza en apache2, seguramente leiste algún manual de versiones
anteriores, antes *TODO* se metia en el archivo httpd.conf, y no habia
tantos directorios en /etc/apache2/ pero para cambiar cualquier cosa,
tenias que abrir ese monstruo de archivo de configuración, así que
ahora se han separado algunas cosas en sus propios archivos y
directorios.

    En tu caso, la configuración que pusiste en httpd.conf, es la
configuración de directorios, alias, servidores virtuales, etc. de
apache2, y para esa configuración ahora se utiliza el directorio
/etc/apache2/sites-available , que es el directorio que contiene los
archivos de configuración de directorios, y el directorio
/etc/apache2/sites-enabled , que contiene enlaces a los archivos de
sites-available que van a estar funcionando, es decir, en
sites-available estan todas las posibles configuraciones
(configuraciones disponibles), y en sites-enabled, enlaces a los
archivos de sites-available que SI queremos que funcionen
(configuraciones activas). Lo mismo sucede con mods-available y
mods-enabled.

    A su vez, todos esos archivos son llamados desde apache2.conf, que
es ahora el archivo de configuración principal, desde él se llama a
sites-enabled, mods, enabled, ports, y a httpd.conf (para mantener
cierta compatibilidad, aunque es mejor utilizar los archivos de la
nueva manera)entre otros. Las lineas que llaman a esos archivos
inician con "Include" en apache2.conf.

    En resumen, te recomiendo que la configuración que utilizaste en
httpd.conf, la apliques en sites-enabled/000-default.

    Y aún tengo dudas en que funcione bien el script que te hice con
las modificaciones, prueba que funcione correctamente (que al
seleccionar un color y presionar un boton, vuelva a aparecer la misma
pantalla con el color de texto que seleccionaste).

Saludos.

On 11/6/06, vicente villaveces <jvicentevilla en yahoo.es> wrote:
> Saludos.
>       Agradecimiento a el Sr. aNgel rEsendiz g.
>  Para el momento de recibir el correo estaba haciendo algunas pruebas agregando algunas directivas al archivo http.conf el cual está ubicado en mi equipo en  /etc/apache2
>       Siguiendo sus indicaciones copié y pegué el archivo color.py en: /usr/lib/cgi-bin  lo ejecutè desde el naveador con: http://locallhost/cgi-bin/color.py y el navegador presentò el mensaje:
>  Internal Server error   Por lo que abrì el  archivo  /var/log/apache2/error.log  para leer las causas del error,  las entradas correspondientes al error segùn la  hora de ocurrencia  son:
>
>  Premature end of script headers: color.py
>  File not existe: /var/www/faviscom.Ico.
>
>  Editè el archivo color.py y busquè alguna informaciòn sobre codigo html y pude hacer algunas modificaciones, finalmente el archivo quedò asi:
>
>  #!/usr/bin/python
>  import cgi
>
>  print "Content-Type: text/html\n"
>  form=cgi.FieldStorage()
>  color=form.getvalue('color')
>
>  print '''<html><header><title>Seleccionar color</title></header><body>
>  <form action="/cgi-bin/color.py" method="post">
>  <input type="radio" name="color" value="black" checked>Negro<br>
>  <input type="radio" name="color" value="red" checked>Rojo<br>
>  <input type="radio" name="color" value="green" >green<br>
>  <input type="submit" value="escojer">
>  </form>'''
>  if color:
>      print '''<font> color=%s>"El color de este texto es: %s" </font>%(color,color)
>  </body></html>'''
>
>      Despuès de que corriò el cgi fuì eliminando una a una las directivas agregadas al archivo: http.cof  hasta producir el error nuevamente y lograr asì determinar cual directa era la requerida, el archivo quedò asi:
>
>  # This is here for backwards compatability reasons and to support
>  #  installing 3rd party modules directly via apxs2, rather than
>  #  through the /etc/apache2/mods-{available,enabled} mechanism.
>  #
>  #LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so
>  LoadModule python_module /usr/lib/apache2/modules/mod_python.so
>
>   <Directory /usr/lib/cgi-bin>
>                 Options +ExecCGI
>          </Directory>
>
>      Para finalizar nuevamente mi agradecimiento al señor aNgel rEsendiz g. , a la administraciòn de la lista y todos los usuarios listeros por permitir que se propague el conocimiento.
>
>
>
>
> "aNgel rEsendiz g." <sonajadiabolica en gmail.com> escribió: Intenta nuevamente, pero con http://localhost/cgi-bin/color.py.
>
> Otra cosa es que probablemente cambiaste algo en la configuración de
> apache que no recuerdas.
>
> Escribe en la terminal "ps ax", y busca una linea que sea algo así:
> /usr/sbin/apache2
> si no la encuentras, escribe "sudo /etc/init.d/apache2 start" y nos
> dices que mensaje obtienes.
>
> De hecho, si obtienes algún mensaje de error, para facilitar las
> cosas, puedes hacer esto:
>
> sudo apt-get remove --purge apache2
> sudo rm -rf /etc/apache2/
> sudo apt-get install apache2
>
> Despues vuelve a intentar con http://localhost/cgi-bin/color.py
>
> Saludos
>
>
>
>
>
> ---------------------------------
>
> LLama Gratis a cualquier PC del Mundo.
> Llamadas a fijos y móviles desde 1 céntimo por minuto.
> http://es.voice.yahoo.com
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>


-- 
aNgel rEsendiz.!




Más información sobre la lista de distribución Python-es