Hola amigos. Acabo de encontrar la solución. Lo que cambia de Apache 2.2 a Apache 2.4 es que hay que incluir lo siguiente en el archivo "apache2.conf":
LoadModule cgi_module /usr/lib/apache2/modules/mod_cgi.so Ahora todo funciona correctamente. Espero que esto ayude a quien lo necesite. :-) Saludos. El 14 de febrero de 2015, 13:44, Juan M. Puertas <soft.sir...@gmail.com> escribió: > Hola. > Acabo de instalar apache2.2 en lugar de la versión 2.4, que viene en el > repositorio de Linux Mint. Ahora todo funciona perfectamente. > Tendré que leer las novedades de apache 2.4. > Gracias por vuestra ayuda. :-) > > El 14 de febrero de 2015, 12:54, Juan M. Puertas <soft.sir...@gmail.com> > escribió: > > >> *¿Pero tienes la directiva <Directory> en .htaccess o no? (En otro >> mensaje lo tienes puesto)* >> No tengo la directiva <Directory>, la puse para una prueba, pero cuando >> funcionaba bien no la tenía, ni la tengo ahora. >> Ya digo que el programa comienza así: >> #!/usr/bin/env python >> import cgitb;cgitb.enable() >> Ya he hecho la prueba de poner "#!/usr/bin/python2.7" y sigue fallando. >> Claro, ahora que caigo; es una versión compatible con python2 y python3. :-) >> Para ir descartando posibilidades, voy a instalar "Apache 2.2" y seguir >> las instrucciones que tenía cuando todo funcionaba bien. >> Muchas gracias por todo, Chema. :-) >> Os mantendré informados. >> >> El 14 de febrero de 2015, 12:06, Chema Cortes <pych...@gmail.com> >> escribió: >> >> El 13 de febrero de 2015, 23:37, Juan M. Puertas <soft.sir...@gmail.com> >>> escribió: >>> >>>> Muchas gracias Chema :-) Ahora hace algo más raro. >>>> He dejado el ".htaccess" así: >>>> >>>> DirectoryIndex index.html >>>> Options ExecCGI >>>> AddHandler cgi-script .py .cgi >>>> AddType text/html .py .cgi >>>> >>>> Por que "error.log" indica que en este archivo no se permite >>>> "<Directory ... >>>> He puesto "AllowOverride All" en el sitio adecuado de "apache2.conf", y >>>> Firefox me lanza una mezcla del código fuente y de la parte visual de la >>>> página web. :-? >>>> Chromium sigue mostrando sólo el código fuente. >>>> >>>> >>> ¿Pero tienes la directiva <Directory> en .htaccess o no? (En otro >>> mensaje lo tienes puesto) >>> >>> No se puede cambiar esta directiva desde el .htaccess, ni en apache 2.4 >>> ni en 2.2 >>> >>> ¿Tienes bien puesto el hashtag, con la ruta del ejecutable python, en el >>> cgi? >>> >>> Prueba a ejecutarlo desde la línea de comandos, como si fuera un script >>> normal. (eg: ./mycgi.py) >>> >>> >>> >>>> ¿Puede deberse a que intenta lanzar python3.4 en lugar de python 2.7?. >>>> Ya sabemos que ha cambiado la forma de hacer print. >>>> >>> >>> python 2.7 está más próximo a python3 que a python 2.4. No creo que sea >>> un problema del print. >>> >>> >>>> ¿Puede deberse al cambio entre apache 2.2 a apache 2.4? >>>> >>> >>> >>>> Seguiré investigando... >>>> >>> >>> >>>> >>>> El 13 de febrero de 2015, 21:29, Chema Cortes <pych...@gmail.com> >>>> escribió: >>>> >>>> Holas, >>>>> >>>>> En la configuración principal de apache2.conf tienes un "AllowOverride >>>>> None". Si no lo cambias, no tendrá en cuenta nada de lo que pongas en >>>>> ficheros ".htaccess" >>>>> >>>>> >>>>> >>>>> El 13 de febrero de 2015, 17:42, Juan M. Puertas < >>>>> soft.sir...@gmail.com> escribió: >>>>> >>>>> Pepe: >>>>>> He hecho la prueba de lo que me dices así: >>>>>> "$ sudo a2enmod python" >>>>>> Y me devuelve: >>>>>> "ERROR: Module python does not exist!" >>>>>> Luego lo he intentado así: >>>>>> "$ sudo a2enmod cgi" >>>>>> Luego reinicio apache. >>>>>> Lo que sucede ahora es que no encuentra el programa.py (NOT FOUND) >>>>>> >>>>>> Carlos: >>>>>> Con Firefox pregunta si abrir o guardar el archivo programa.py. Con >>>>>> Chromium abre el código fuente en el mismo navegador. >>>>>> Ya tenía el print 'Content-type: text/html' >>>>>> El error.log de apache parece no indicar error alguno: >>>>>> >>>>>> [Fri Feb 13 17:07:10.531526 2015] [mpm_event:notice] [pid 5700:tid >>>>>> 3074771584] AH00491: caught SIGTERM, shutting down >>>>>> [Fri Feb 13 17:07:11.650739 2015] [mpm_event:notice] [pid 5815:tid >>>>>> 3074701952] AH00489: Apache/2.4.7 (Ubuntu) configured -- resuming normal >>>>>> operations >>>>>> [Fri Feb 13 17:07:11.651031 2015] [core:notice] [pid 5815:tid >>>>>> 3074701952] AH00094: Command line: '/usr/sbin/apache2' >>>>>> >>>>>> Carlos y Alexandro: >>>>>> Si no lo consigo, buscaré cómo convertir un simple cgi en wsgi. >>>>>> >>>>>> Muchas gracias a todos por vuestras recomendaciones. :-) >>>>>> >>>>>> >>>>>> El 13 de febrero de 2015, 14:31, Alexandro Colorado <j...@oooes.org> >>>>>> escribió: >>>>>> >>>>>> Te reocomiendo quitar cgi, y usar wsgi. Es mas facil de configurar, >>>>>>> aun asi, creo que tu problema tiene que ver con que apache no esta >>>>>>> cogiendo >>>>>>> la configuracion del mime-type (o tipo de archivo). >>>>>>> >>>>>>> 2015-02-13 7:33 GMT-05:00 Carlos Zuniga <carlos....@gmail.com>: >>>>>>> >>>>>>> 2015-02-13 5:16 GMT-05:00 Juan M. Puertas <soft.sir...@gmail.com>: >>>>>>>> > Gracias por vuestras ideas. >>>>>>>> > Juan ignacio. Si, los archivos .py tienen permisos de ejecutable >>>>>>>> (755). >>>>>>>> > Alejandro. No estoy utilizando un framework. El programa es un >>>>>>>> simple CGI, >>>>>>>> > de momento las pruebas las estoy haciendo así. En el .htaccess >>>>>>>> (puesto en >>>>>>>> > /var/www y var/www/cgi-bin) tengo lo siguiente: >>>>>>>> > >>>>>>>> > DirectoryIndex index.html >>>>>>>> > Options +ExecCGI >>>>>>>> > AddHandler cgi-script .py .cgi >>>>>>>> > AddType text/html .py .cgi >>>>>>>> > <Directory /var/www/cgi-bin/> >>>>>>>> > Order deny,allow >>>>>>>> > Allow from all >>>>>>>> > </Directory> >>>>>>>> > >>>>>>>> > Mi pregunta sobre todo va por si a alguien le ha pasado que el >>>>>>>> navegador >>>>>>>> > intente abrir el archivo python en lugar de que corra. >>>>>>>> > Saludos :-) >>>>>>>> > >>>>>>>> > >>>>>>>> >>>>>>>> Lo intenta abrir, pero te devuelve el contenido del script python o >>>>>>>> el >>>>>>>> resultado de ejecutarlo? Si es lo segundo, tal vez el problema sea >>>>>>>> que >>>>>>>> el navegador no lo reconoce como un html. Intenta poner un `print >>>>>>>> 'Content-type: text/html'` o 'text/plain' entre tus headers. >>>>>>>> >>>>>>>> Que dice el error.log / access.log de apache? >>>>>>>> >>>>>>>> También prueba chequear lo que dicen por aquí: >>>>>>>> http://stackoverflow.com/a/10135416 >>>>>>>> >>>>>>>> **** >>>>>>>> >>>>>>>> Por otro lado, sería mucho mejor que utilizaras mod_wsgi. Si no >>>>>>>> quieres usar un framework, todo lo que tienes que hacer es poner una >>>>>>>> funcion llamada `application` [0] en tu script que retorne una >>>>>>>> cadena >>>>>>>> dentro de una lista: >>>>>>>> >>>>>>>> def application(env, start_response): >>>>>>>> start_response('200 OK', [('Content-Type','text/html')]) >>>>>>>> return ["<html><body>Hello World</body></html>"] >>>>>>>> >>>>>>>> Y configurar mod_wsgi para que apunte a tu script: >>>>>>>> >>>>>>>> WSGIScriptAlias /wsgi_app /srv/http/wsgi_app.py >>>>>>>> >>>>>>>> -- >>>>>>>> Saludos >>>>>>>> >>>>>>>> >>>>>>>> [0] http://webpython.codepoint.net/wsgi_application_interface >>>>>>>> _______________________________________________ >>>>>>>> Python-es mailing list >>>>>>>> Python-es@python.org >>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Alexandro Colorado >>>>>>> Apache OpenOffice Contributor >>>>>>> 882C 4389 3C27 E8DF 41B9 5C4C 1DB7 9D1C 7F4C 2614 >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es@python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este >>>>>> mensaje en un tiempo.* >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es@python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>>>> http://ch3m4.org/blog >>>>> Buscador Python Hispano: http://ch3m4.org/python-es >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es@python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este >>>> mensaje en un tiempo.* >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es@python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": >>> http://ch3m4.org/blog >>> Buscador Python Hispano: http://ch3m4.org/python-es >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es@python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este >> mensaje en un tiempo.* >> > > > > -- > *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este > mensaje en un tiempo.* > -- *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este mensaje en un tiempo.*
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/