A atualização para o Ubuntu 16.04 removeu minha instalação do MediaWiki, como faço para recuperá-lo?

4

Eu atualizei do Ubuntu 14.04 para o 16.04 e descobri que não há mediawiki package , porque o Debian desistiu em dezembro de 2015 por estar desatualizado e ninguém queria mantê-lo .

Eu tive uma instalação do MediaWiki em funcionamento ontem, e após a atualização, agora não tenho. Como posso voltar a funcionar?

    
por Stuart Caie 23.04.2016 / 15:53

1 resposta

5

Esta resposta presume que você está disposto a manter o MediaWiki a partir de agora.

Além disso, ele irá instalar o MediaWiki na raiz do documento real do seu servidor web. Anteriormente, isso teria sido um alias, e o caminho da instalação real estaria sob /var/lib/mediawiki , mas agora cabe a você mantê-lo em vez dos mantenedores Debian / Ubuntu, é mais simples colocá-lo sob seu caminho real.

Nessa resposta, a raiz do documento do site é /srv/apache2/public_html e o local do wiki no servidor da Web é /wiki (por exemplo, http://myserver/wiki ), criando o caminho completo /srv/apache2/public_html/wiki . Você precisará adaptar esses caminhos para se adequar à sua própria configuração.

Faça o download do MediaWiki mais recente e descompacte-o diretamente no caminho que ele deve ter em seu servidor web.

wget https://releases.wikimedia.org/mediawiki/1.26/mediawiki-1.26.2.tar.gz
tar xvf mediawiki-1.26.2.tar.gz
mv mediawiki-1.26.2 /srv/apache2/public_html/wiki
cd /srv/apache2/public_html/wiki
chown -R www-data:www-data .

Edite o arquivo LocalSettings.php e altere a configuração MW_INSTALL_PATH de /var/lib/mediawiki para o novo caminho.

Faça o mesmo no arquivo /etc/apache2/conf-available/mediawiki.conf

Se você enviou alguma imagem para o seu wiki, você terá um diretório images em /var/lib/mediawiki . Copie-o para o novo diretório de instalação:

cp -a /var/lib/mediawiki/images .

Você descobrirá que vários dos pacotes PHP dos quais o MediaWiki se baseia não estão instalados para o PHP 7, que é a nova versão padrão do PHP para o Ubuntu 16.04. O MediaWiki funciona bem com o PHP 7, mas você precisa instalar esses pacotes manualmente e ativá-los:

apt-get install libapache2-mod-php7.0 php-apcu php-gd php-json php-mysql php-xml
phpenmod apcu gd json pdo_mysql dom
a2enmod php7.0
a2enconf mediawiki

Eu usei o APC para cache , e descobri que o MediaWiki usa o módulo APC tradicional, que não é incluído no PHP 7. Eu consertei isso usando o módulo APCu. No código da MediaWiki, substitua apc_* chamadas por apcu_* chamadas:

sed -i 's/apc_/apcu_/g' includes/libs/objectcache/APCBagOStuff.php
sed -i 's/apc_/apcu_/g' includes/objectcache/ObjectCache.php

Execute o script de atualização para atualizar a estrutura do banco de dados do MediaWiki:

cd maintenance/
php update.php

Se o usuário do banco de dados que você usa para o wiki não tiver as permissões para modificar a estrutura do banco de dados, o script falhará. Use as opções --dbuser e --dbpass do script para fornecer ao usuário do MySQL mais privilégios. Se você tiver um arquivo AdminSettings.php , use os detalhes lá - o MediaWiki não lê mais este arquivo, e você deve excluir este arquivo a partir de agora.

Agora, deve ser possível reiniciar o Apache e ver seu wiki em seu site:

service apache2 restart

Um último problema que eu tinha aparecido quando visitei o meu wiki: MediaWiki 1.25+ auto-descoberta de pele desativada e eu foi dito para adicionar um wfLoadSkin( 'Vector' ); explícito ao meu LocalSettings.php .

    
por Stuart Caie 23.04.2016 / 15:53