Discussion:
apache2 no me reconoce las extensiones .php
(demasiado antiguo para responder)
Victor Lopez
2007-02-18 18:26:58 UTC
Permalink
Buenas a ***@s ...

Antes de empezar con el problema ... algunos datos (via Copiar/Pegar):

en /etc/apache2/apache2.conf ...

DirectoryIndex index.html index.php index.pl index.cgi index.xhtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddHandler php-script .php
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf

y existen ...

/etc/apache2/mods-available/php5.load
/etc/apache2/mods-available/php5.conf
/etc/apache2/mods-enabled/php5.load como sus enlaces correspondientes
/etc/apache2/mods-enabled/php5.conf como sus enlaces correspondientes

tambien existen ...

/usr/lib/apache2/modules/libphp5.so
pero no se comprobar si existe el mod_php5.c del que habla en php5.conf

El caso, y este es el problema, es que no me reconoce las extensiones .php y
me saca el dialogo de 'Quiere guardar o ejecutar?'

Me he saltado algo, para que SI funcione?

NOTA:Esto me pasa desde que intente cambiar php4 a php5, desinstalando y
(mal) instalando, hace un par de días. Antes funcionaba con php4, pero
ahora ni volviendo a php4 :-(

NOTA 2: Apache2 sobre K-Ubuntu 6.06.1 y ocurre tanto en Opera, en Firefox y
en Konqueror (el tipo mime es correcto ya que el cuadro de dialogo habla de
un 'application/x-httpd-php', menos en Firefox que solo habla de un archivo
PHP)

Como todo iva bien hasta mi gran idea de cambiar ... ahora va y me corre
prisa ... ya se que a todo el mundo le corre prisa lo suyo :-(
--
----o---( )---o----
Saludos de Victor Lopez Sabio
***@ono.com
--------oooo--------
Oscar Garcia
2007-02-18 18:42:26 UTC
Permalink
Post by Victor Lopez
El caso, y este es el problema, es que no me reconoce las extensiones .php y
me saca el dialogo de 'Quiere guardar o ejecutar?'
Me he saltado algo, para que SI funcione?
¿Probaste lo que te dije de desinstalarlo todo usando "--purge" para
eliminar los archivos de configuración y luego volver a instalarlo?

Deberías hacer algo como:
apt-get remove --purge libapache2-mod-php5 php5-mysql php5-pgsq ...

Así se te quedará "limpio" el equipo de cualquier archivo de
configuración que te esté fastidiando su funcionamiento (incluidos los
.load y .conf de apache2).

Luego basta con reinstalarlo todo de nuevo usando:
apt-get install libapache2-mod-php5 php5-mysql php5-pgsq php5-gd ...

Y volverás a tener todo configurado y funcionando.

Si te sigue sin funcionar entonces reinicia el servidor apache y
mándame el log de syslog y apache:
/etc/init.d/apache2 restart
Post by Victor Lopez
Como todo iva bien hasta mi gran idea de cambiar ... ahora va y me corre
prisa ... ya se que a todo el mundo le corre prisa lo suyo :-(
Espero que te funcione.

Yo pasé una vez el servidor de mpm-prefork a mpm-worker y me pasó lo
mismo que a tí porque no funciona con libapache2-mod-php4 si no que
funciona con php4-cgi... te puedes imaginar que cuando instalé de
nuevo todo ya no me funcionaba (hasta que hice un "purge").

Un saludo.
--
Óscar Javier García Baudet
LinaresDigital
http://redstar.linaresdigital.com/
Victor Lopez
2007-02-18 19:21:16 UTC
Permalink
Post by Oscar Garcia
Post by Victor Lopez
El caso, y este es el problema, es que no me reconoce las extensiones .php
y me saca el dialogo de 'Quiere guardar o ejecutar?'
Me he saltado algo, para que SI funcione?
¿Probaste lo que te dije de desinstalarlo todo usando "--purge" para
eliminar los archivos de configuración y luego volver a instalarlo?
apt-get remove --purge libapache2-mod-php5 php5-mysql php5-pgsq ...
Así se te quedará "limpio" el equipo de cualquier archivo de
configuración que te esté fastidiando su funcionamiento (incluidos los
.load y .conf de apache2).
apt-get install libapache2-mod-php5 php5-mysql php5-pgsq php5-gd ...
Y volverás a tener todo configurado y funcionando.
Si te sigue sin funcionar entonces reinicia el servidor apache y
/etc/init.d/apache2 restart
Si ya he hecho todas las combinaciones posibles, menos la buena claro,
parando y rearrancando el Apache ... comprobando que coincidan las
versiones de php con la configuracion de Apache ... etc ... etc ...
Post by Oscar Garcia
Post by Victor Lopez
Como todo iva bien hasta mi gran idea de cambiar ... ahora va y me corre
prisa ... ya se que a todo el mundo le corre prisa lo suyo :-(
Espero que te funcione.
Yo pasé una vez el servidor de mpm-prefork a mpm-worker y me pasó lo
mismo que a tí porque no funciona con libapache2-mod-php4 si no que
funciona con php4-cgi... te puedes imaginar que cuando instalé de
nuevo todo ya no me funcionaba (hasta que hice un "purge").
Un saludo.
No te he contestado en el otro hilo, porque me salio este problema y, hasta
que no lo solvente, no se si funciona bien, o no, lo que me dijistes de
hacer, purge incluido, que ya lo he hecho, pero tengo en mi contra a
Murphy-

Porque, mientras no me reconozca los .php, no podre comprobar lo del
postgreSQL :-(

Que verdad la de 'los problemas nunca vienen solos'. :-(
--
----o---( )---o----
Saludos de Victor Lopez Sabio
***@ono.com
--------oooo--------
Oscar Garcia
2007-02-19 22:48:36 UTC
Permalink
Post by Victor Lopez
No te he contestado en el otro hilo, porque me salio este problema y, hasta
que no lo solvente, no se si funciona bien, o no, lo que me dijistes de
hacer, purge incluido, que ya lo he hecho, pero tengo en mi contra a
Murphy-
Porque, mientras no me reconozca los .php, no podre comprobar lo del
postgreSQL :-(
Lo realmente importante para que funcione PHP sobre Apache 2 es:

a) La carga del módulo: suele estar en php4.load y suele ser del tipo:
LoadModule php4_module /usr/lib/apache2/modules/libphp4.so

b) La configuración de la extensión .php: suele estar en php4.conf y
suele contener:
<IfModule mod_php4.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
</IfModule>

Aunque están definidos como sabrás en /etc/apache2/mods-avaible deben
tener el enlace en /etc/apache2/mods-enabled para que estén activos.

Ví en un mensaje anterior que lo tenías bien... que tenías el .load y
el .conf, pero.. ¿miraste el contenido? Comprueba que por casualidad
no estubiera comentada alguna línea.

Por otro lado... haz un:
wget -S http://localhost/

Te deberá aparecer algo como:
3 Server: Apache/2.0.54 (Debian GNU/Linux) PHP/4.3.10-18
Que debería (pero no tiene porqué ser así dependiendo de cómo tengas
configurado el servidor) indicarte si está o no instalado el módulo.

Para saber si está cargándose un módulo o no ¿sabes lo que hago a
veces?

Modifico el .conf y hago esto:
<IfModule mod_php4.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
LALALAALLAALLALALALLAL
</IfModule>

Seguro que al arrancar me dejará un mensaje de error de regalo :)

Si no lo hiciera entonces es porque no ha funcionado bien el
LoadModule y por eso no funciona bien el condicional "IfModule".

Si el módulo no se encuentra debería darte un error del tipo:
Syntax error on line 1 of /etc/apache2/mods-enabled/php4.load:
Cannot load /usr/lib/apache2/modules/libphp4.so into server:
/usr/lib/apache2/modules/libphp4.so: cannot open shared object file:
No such file or directory

En caso de que el módulo se cargue bien y todo funcione bien debería
darte el siguiente error:
Syntax error on line 4 of /etc/apache2/mods-enabled/php4.conf:
Invalid command 'LALALAALLAALLALALALLAL', perhaps mis-spelled or
defined by a module not included in the server configuration

Si no te diera un error es porque posiblemente no se ha cargado bien
el módulo o bien porque se están cargando los .conf antes que los
.load (caso que no debería darse porque a propósito se hace en el
orden inverso).

Luego tengo otra preguntilla.. ¿has tocado algo dentro del
apache.conf?

Configuras los hosts virtuales en /etc/apache2/sites-avaible y en
/etc/apache2/sites-enabled haces un enlace, ¿no?

Aunque sea un coñazo podría echar un vistazo a los archivos de
configuración por si tienes algo mal (preferiría no hacerlo, pero si
es necesario ya te pediré que pegues algunas partes aquí).
Post by Victor Lopez
Que verdad la de 'los problemas nunca vienen solos'. :-(
Espero que se te haya arreglado ya o bien que se te arregle pronto.

Un saludo y suerte.
--
Óscar Javier García Baudet
LinaresDigital
http://redstar.linaresdigital.com/
Fenix
2007-02-20 08:09:23 UTC
Permalink
Post by Oscar Garcia
b) La configuración de la extensión .php: suele estar en php4.conf y
<IfModule mod_php4.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
</IfModule>
Creo que Víctor comentó que la tenía en el mime.types... donde
debería funcionar igualmente.

Quizá mirando el log que lanza el servidor web cuando arranca...
Oscar Garcia
2007-02-20 15:06:58 UTC
Permalink
Post by Fenix
Post by Oscar Garcia
b) La configuración de la extensión .php: suele estar en php4.conf y
<IfModule mod_php4.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
</IfModule>
Creo que Víctor comentó que la tenía en el mime.types... donde
debería funcionar igualmente.
En /etc/mime.types debería aparecer:
application/x-httpd-php phtml pht php
application/x-httpd-php-source phps
application/x-httpd-php3 php3
application/x-httpd-php3-preprocessed php3p
application/x-httpd-php4 php4

Pero a mí me gusta dejar los archivos de configuración hacer su
trabajo (aunque a veces sea un poco redundante).

Creo que el fallo lo tiene en el AddHandler, veamos a ver qué dice
cuando lo quite.
Post by Fenix
Quizá mirando el log que lanza el servidor web cuando arranca...
Normalmente ese tipo de errores no salen en los logs, aunque ya le
recomendé que los mirase en su momento.

Un saludo.
--
Óscar Javier García Baudet
LinaresDigital
http://redstar.linaresdigital.com/
Oscar Garcia
2007-02-20 15:03:03 UTC
Permalink
Post by Victor Lopez
en /etc/apache2/apache2.conf ...
DirectoryIndex index.html index.php index.pl index.cgi index.xhtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddHandler php-script .php
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Lo de AddType debería estar _sólo_ en php5.conf, procura no modificar
a mano apache2.conf, evitarás complicaciones a posteriori (como las
que estás teniendo).

El AddHandler php-script .php te sobra ya que sólo debe cargarse lo
que tienes en php5.conf (los addtype).
Post by Victor Lopez
y existen ...
/etc/apache2/mods-available/php5.load
/etc/apache2/mods-available/php5.conf
/etc/apache2/mods-enabled/php5.load como sus enlaces correspondientes
/etc/apache2/mods-enabled/php5.conf como sus enlaces correspondientes
Correcto, siempre que no modifiques su contenido.
Post by Victor Lopez
tambien existen ...
/usr/lib/apache2/modules/libphp5.so
pero no se comprobar si existe el mod_php5.c del que habla en php5.conf
Ya te comenté cómo probarlo.
Post by Victor Lopez
Me he saltado algo, para que SI funcione?
Espero que eliminando el AddHandler te funcione.
Post by Victor Lopez
NOTA:Esto me pasa desde que intente cambiar php4 a php5, desinstalando y
(mal) instalando, hace un par de días. Antes funcionaba con php4, pero
ahora ni volviendo a php4 :-(
Tiene pinta de que ha dejado de funcionar por haber tocado
directamente en los archivos de configuración ;(

Acostúmbrate a usar mods-avaible, sites-avaible, conf.d, etc...
Post by Victor Lopez
NOTA 2: Apache2 sobre K-Ubuntu 6.06.1 y ocurre tanto en Opera, en Firefox y
en Konqueror (el tipo mime es correcto ya que el cuadro de dialogo habla de
un 'application/x-httpd-php', menos en Firefox que solo habla de un archivo
PHP)
Da igual el navegador, el resultado debería ser el mismo para todos
ellos ya que no depende del cliente que se ejecute o no un script PHP.
Post by Victor Lopez
Como todo iva bien hasta mi gran idea de cambiar ... ahora va y me corre
prisa ... ya se que a todo el mundo le corre prisa lo suyo :-(
Iba bien, quizá, porque posiblemente usaste algo que en PHP4 daba
igual pero que en PHP5 no puedes hacerlo.

Espero que hagas la prueba y nos digas qué tal ha ido.

Un saludo.
--
Óscar Javier García Baudet
LinaresDigital
http://redstar.linaresdigital.com/
Victor Lopez
2007-02-21 00:52:17 UTC
Permalink
Post by Victor Lopez
en /etc/apache2/apache2.conf ...
DirectoryIndex index.html index.php index.pl index.cgi index.xhtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddHandler php-script .php
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
y existen ...
/etc/apache2/mods-available/php5.load
/etc/apache2/mods-available/php5.conf
/etc/apache2/mods-enabled/php5.load como sus enlaces correspondientes
/etc/apache2/mods-enabled/php5.conf como sus enlaces correspondientes
tambien existen ...
/usr/lib/apache2/modules/libphp5.so
pero no se comprobar si existe el mod_php5.c del que habla en php5.conf
El caso, y este es el problema, es que no me reconoce las extensiones .php
y me saca el dialogo de 'Quiere guardar o ejecutar?'
Me he saltado algo, para que SI funcione?
NOTA:Esto me pasa desde que intente cambiar php4 a php5, desinstalando y
(mal) instalando, hace un par de días. Antes funcionaba con php4, pero
ahora ni volviendo a php4 :-(
NOTA 2: Apache2 sobre K-Ubuntu 6.06.1 y ocurre tanto en Opera, en Firefox
y en Konqueror (el tipo mime es correcto ya que el cuadro de dialogo habla
de un 'application/x-httpd-php', menos en Firefox que solo habla de un
archivo PHP)
Como todo iva bien hasta mi gran idea de cambiar ... ahora va y me corre
prisa ... ya se que a todo el mundo le corre prisa lo suyo :-(
Gracias por todos los comentarios, aunque al final 'he tirado por la alle de
enmedio' ...
He desinstalado y purgado Apache, PHP y PostgreSQL ... los tres.
He eliminado, a mano, algunos directorios no vacios.
He reinstalado los tres a la vez y ... ya me funciona.
El Apache ya me reconoce el PHP, aunque no me han acabado los problemas.
Ahora tengo compilado e instalado el PostgreSQL, pero me estoy peleando con
la documentacion en ingles para generar el cluster ... con initdb ... pero
como (esa es otra historia) :-)

Aprovecho para contestar :-)

AddType y AddHandler, asi como los Include no son mios ... los puso el
mismo por defecto.
Los contenidos de .conf y .load los sabia ... por eso
Post by Victor Lopez
/usr/lib/apache2/modules/libphp5.so
pero no se comprobar si existe el mod_php5.c del que habla en php5.conf
y lo de los mods-available y mods-enabled tambien lo sabia :-) ... por eso
Post by Victor Lopez
/etc/apache2/mods-available/php5.load
/etc/apache2/mods-available/php5.conf
/etc/apache2/mods-enabled/php5.load como sus enlaces correspondientes
/etc/apache2/mods-enabled/php5.conf como sus enlaces correspondientes
Y lo mismo lo de los servidores virtuales con sites-available y
sites-enabled

Pero, otra vez, gracias.

Leyendo el fichero de configuracion que me ha puesto ...
-las entradas AddTypes estan comentadas dejandolas para el contenido del
modulo, luego debi modifiar (pero no me acuerdo cuando)
-AddHandler del php es que ni existe, luego debi modifiar (pero no me
acuerdo cuando)
--
----o---( )---o----
Saludos de Victor Lopez Sabio
***@ono.com
--------oooo--------
Oscar Garcia
2007-02-21 01:30:13 UTC
Permalink
Post by Victor Lopez
-AddHandler del php es que ni existe, luego debi modifiar (pero no me
acuerdo cuando)
He instalado en un equipo ubuntu server, le he instalado apache2, php5
y los modulos de mysql y postgresql. Le he añadido AddHandler y ha
dejado de funcionar.

Al quitarlo de nuevo funcionaba...

Lastima no haber podido instalarmelo antes en casa para echarte una
mano.

Un saludo.
--
Óscar Javier García Baudet
LinaresDigital
http://redstar.linaresdigital.com/
Victor Lopez
2007-02-24 00:34:54 UTC
Permalink
Post by Oscar Garcia
Lastima no haber podido instalarmelo antes en casa para echarte una
mano.
La intención es lo que cuenta :-)
--
----o---( )---o----
Saludos de Victor Lopez Sabio
***@ono.com
--------oooo--------
Continúe leyendo en narkive:
Loading...