Após a atualização do meu servidor ubuntu para 13.04, meu phpmyadmin não está mais acessível. o navegador relata 500 (erro interno do servidor) e no error.log diz:
Erro fatal do PHP: require_once (): falha na abertura necessária './libraries/php-gettext/gettext.inc' (include_path = '.') Em /usr/share/phpmyadmin/libraries/select_lang.lib.php na linha 370
Qualquer outro software php funciona bem na máquina e o mysql em si. O Phpmyadmin está instalado corretamente e funcionou bem antes do dist-upgrade. Eu também fiz, sudo aptitude reinstall phpmyadmin
mas isso não ajudou.
o número da versão do phpmyadmin é 4: 3.5.8.1-1
alguma idéia, o que poderia estar errado aqui?
/ edit: a essa altura eu descobri que os links simbólicos aqui não parecem 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
Eu php-gettext
fiz o backup da pasta e copiei o link simbólico, agora funciona. então isso realmente parece ser um problema de link simbólico.
este é o começo do meu /etc/phpmyadmin/apache.conf
# phpMyAdmin default Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
portanto, deve seguir os links simbólicos imediatamente. antes da atualização do ubuntu, tudo funcionava bem. Então, qual é o problema com os links simbólicos?
/usr/share/php/php-gettext
. Você está usando o SELinux / AppArmor?Respostas:
Para mim, a seguinte solução resolveu o problema:
No arquivo conf do meu site, tenho a seguinte seção:
A única alteração que fiz desde a instalação do Ubuntu 13.04 é incluir / usr / share / php / php-gettext / no open_basedir, e foi o que fez.
fonte
Para os outros:
pode ser a resposta (especialmente com php7, pois parece que isso não está incluído por padrão, talvez porque seja uma extensão pêra).
fonte
php-gettext
pacote (e a adiçãoRequire all granted
dephpmyadmin.conf
) o fez funcionar novamente.php-mbstring
foram necessários para obter phpmyadmin para a direita trabalho para mim com php7Se o seu já
open_basedir
contiver/usr/share/php/php-gettext/
(como no meu caso) e você não conseguir que ele funcione com as respostas anteriores, faça:remove os links simbólicos
cria links físicos
Isso faz o phpmyadmin funcionar novamente. Por que ele quebrou no 13.04 e os links simbólicos não são seguidos enquanto o apache.conf diz que deveria, continua sendo um mistério para mim.
fonte
Eu tive que desativar (prefixar com
#
) oAlias /phpmyadmin /usr/share/phpmyadmin
in,/etc/apache2/conf-available/phpmyadmin.conf
pois estou usando um arquivo vhost personalizado para o phpmyadmin para servi-lo em um subdomínio. Com o adicionalAlias
, não funcionou por algum motivo.fonte
Se o phpMyAdmin for executado em um servidor Nginx, será
php.ini
necessário adicionar o caminho/usr/share/php/php-php-gettext
àopen_basedir
chave.fonte