15 votos

phpmyadmin enlaces simbólicos de error después de la actualización de ubuntu

Después de la actualización de mi ubuntu server 13.04 mi phpmyadmin ya no será accesible. el navegador de informes 500 (error interno del servidor) y en el error.registro dice:

PHP Fatal error: require_once(): no se pudo abrir obligatorio./bibliotecas/php-gettext/gettext.inc' (include_path='.') en /usr/share/phpmyadmin/libraries/select_lang.lib.php en la línea 370

Cualquier otro software php funciona bien en la máquina y lo hace de mysql en sí. Phpmyadmin está correctamente instalado y funcionaba bien antes de que el dist-upgrade. también hice sudo aptitude reinstall phpmyadmin pero que no ayuda.

el número de versión de phpmyadmin es 4:3.5.8.1-1

cualquier idea, lo que podría estar equivocado?

/edit: por ahora me enteré, de que los enlaces simbólicos aquí no parecen funcionar:

mcnesium@fluse:/usr/share/phpmyadmin/libraries/php-gettext$ ls -l
total 0
lrwxrwxrwx 1 root root 36 Apr 25 03:38 gettext.inc -> ../../../php/php-gettext/gettext.inc
lrwxrwxrwx 1 root root 36 Apr 25 03:38 gettext.php -> ../../../php/php-gettext/gettext.php
lrwxrwxrwx 1 root root 36 Apr 25 03:38 streams.php -> ../../../php/php-gettext/streams.php

copia de seguridad de la carpeta php-gettext y cp-r en el enlazan uno más, ahora funciona. así que esto realmente parece ser un enlace simbólico-problema.

este es el comienzo de mi /etc/phpmyadmin/apache.conf

# phpMyAdmin default Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php

por lo que se supone que deben seguir enlaces simbólicos de inmediato. antes de la actualización de ubuntu todo funcionaba bien. así que ¿cuál es el asunto con los enlaces simbólicos?

7voto

gdl Puntos 66

Para mí la solución siguiente resuelto el problema:

En mi sitio web conf archivo, tengo la siguiente sección:

    <IfModule mod_php5.c>
            AddType application/x-httpd-php .php

            php_flag magic_quotes_gpc Off
            php_flag track_vars On
            php_flag register_globals Off
            php_admin_flag allow_url_fopen Off
            php_value include_path .
            php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
            php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/
    </IfModule>

El único cambio que he hecho desde Ubuntu 13.04 instalar es include /usr/share/php/php-gettext/ en el open_basedir, y que hizo el truco.

6voto

Lau Marrine Puntos 31

En la solución anterior, el archivo modificado se encuentra en:

sudo gedit /etc/apache2/conf.d/apache.conf 

No te olvides de reiniciar el servidor:

sudo /etc/init.d/apache2 restart 

5voto

user221931 Puntos 141

Si su open_basedir contiene /usr/share/php/php-gettext/ ya (como en mi caso) y no se puede llegar a trabajar con las respuestas anteriores, a continuación, hacer:

sudo rm /usr/share/phpmyadmin/libraries/php-gettext/*

elimina los enlaces simbólicos

sudo ln /usr/share/php/php-gettext/* /usr/share/phpmyadmin/libraries/php-gettext

crea enlaces duros

Esto hace que phpmyadmin trabajar de nuevo. ¿Por qué se rompió en 13.04 y los enlaces simbólicos no son seguidos, mientras que el apache.conf dice que deberían, sigue siendo un misterio para mí.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X