PHP no funciona bien en Ubuntu 13.10 y falta mcrypt en phpmyadmin

15

He actualizado de UBUNTU 13.04 a 13.10 pero no puedo trabajar con páginas PHP o phpmyadmin. He intentado esta manera de instalar la lámpara en Ubuntu sudo apt-get install lamp-server^ phpmyadmin y he realizado toda la configuración correctamente después de la instalación. Agregué esta línea Include /etc/phpmyadmin/apache.confy /etc/apache2/apache2.confluego reinicié apache2.

Ahora tengo dos problemas:

  1. En phpmyadmin en la parte inferior de la página está este error: The mcrypt extension is missing. Please check your PHP configuration lo comprobé y estuve mcryptallí, pero en phpmyadmin me da un error de falta.

  2. El otro problema está en las páginas PHP, parece que no hay PHP y todo es html porque muchas líneas PHP se imprimen en cuadros de texto como: <? echo $row['details']; ?> ¿Alguien puede decirme qué debo hacer?

Mohammad_Hosseini
fuente

Respuestas:

48

Pruebe esto para su problema de mcrypt:

mv -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
sudo php5enmod mcrypt
sudo service apache2 restart

Es un error con la ubicación del archivo mcrypt.ini, obtuve la información de aquí .

Tuve el mismo error, hice un en cplugar de un mvpara estar seguro, pero resolvió el problema.

Para PHP que no funciona, si phpmyadmin funciona (incluso con el error mcrypt), significa que PHP está funcionando (porque phpmyadmin usa PHP). Pero en su ejemplo <? echo $row['details']; ?>el cambio <?a <?phpe intentarlo de nuevo?

Que
fuente
1
gracias, su respuesta solucionó todos mis problemas. <? ?> ya no funciona? en la nueva versión de php? tiene que ser <? php?> para funcionar?
Mohammad_Hosseini
Lo busqué en Google y parece que las etiquetas cortas ya no están activas por defecto. Puede volver a encenderlo, pero es una buena práctica usar siempre <? Php
Qué es el
gracias de antemano, pero aún hay un pequeño problema, en algunas de mis páginas php no sé cuál es el problema, cuando trato de cargar estas páginas solo se muestra una página en blanco, he intentado habilitar informe de errores para php en la parte superior de la página pero aún no se muestra nada en la página. Es posible que este no sea un buen lugar para hacer esta pregunta, pero desde que mencioné este problema, volví a preguntar. si necesitas que ponga algunos de los códigos aquí dime, gracias.
Mohammad_Hosseini
Una página completamente blanca generalmente significa un paréntesis o punto y coma faltante. O llamando a una función que no existe. Si no tiene un entorno de desarrollo de software que pueda ayudarlo, intente comentar partes de su código un bloque a la vez (comience los comentarios con / * y termine con * /, todo lo que está en el medio se comenta). Por lo general, comienzo con aproximadamente la mitad del código comentado y luego trato de mostrar, luego siempre reduzco a dónde está el error).
Qué es el
3

Para el segundo problema, muchas líneas PHP se imprimen en cuadros de texto como: echo $row['details'];

Edite su archivo de configuración php.ini (para apache):

sudo nano -w /etc/php5/apache2/php.ini

y cambio:

short_open_tag = Off

a:

short_open_tag = On
moz667
fuente
guía increíble, gracias también resolvió el problema de la página en blanco
Mohammad_Hosseini
1

Verifique todos sus scripts en /etc/php5/conf.d/ porque habrán dejado de funcionar. En mi caso, imap también dejó de funcionar.

Resuelto el problema con el truco del enlace simbólico (como root):

ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/mcrypt.ini
php5enmod mcrypt
ln -s /etc/php5/conf.d/imap.ini /etc/php5/mods-available/imap.ini
php5enmod imap
service apache2 restart
infernet
fuente
su forma no funciona, me da un error de inexistencia, ya sea imap o mcrypt, pero lo que @whatts dijo funcionó para mí.
Mohammad_Hosseini
1

(Hubiera publicado esto como un comentario arriba pero no tengo los privilegios).

La intuición de Whatts para usar en cplugar de mvera buena. Por ejemplo, si está utilizando el marco laravel 4, la CLI artesanal detectará mcrypt.inien /etc/php5/mods-available/, pero el marco en sí parece que buscarlo en /etc/php5/conf.d/. Necesita una copia en ambos lugares para que todo funcione:

cp -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
sudo php5enmod mcrypt
sudo service apache2 restart
Hugh Grigg 葛 修 远
fuente
0

En terminal ( Ctrl+ Alt+ T)

1.Abra el archivo php.ini:

/etc/php5/apache2$sudo nano php.ini

2.sustituir apagado a encendido:

short_open_tag = On

3. reiniciar apache:

sudo service apache2 restart
Estruendo
fuente
0

En realidad, el lugar correcto para el archivo mcrypt.ini es en el mods-availabledirectorio, no en conf.d. Entonces, reemplazar y habilitar el archivo de configuración de mcrypt resuelve este problema.

Navid
fuente
-1

También tuve un problema mcryptdespués de instalar Ubuntu 14.04. Seguir este enlace debería ayudar. www.php.net

  1. Abra su archivo php.ini sudo gedit /etc/php5/apache2/php.ini
  2. Reinicia tu apache2 sudo service apache2 restart

Espero que esto ayude.

Daroath
fuente