Instalação do MediaWiki em uma Project web do SourceForge

O SourceForge disponibiliza uma wiki pré-instalada para os projetos de seus usuários, porém ela é um tanto limitada de recursos. Eu decidi fazer minha própria instalação do MediaWiki na Project web do AvmLinux. Foi um pouco difícil, mas eu consegui. Por isso escrevo esse tutorial com o passo-a-passo completo para os que tiverem seus projetos no SourceForge e decidirem fazer o mesmo.

[ Hits: 38.819 ]

Por: Antônio Vinícius Menezes Medeiros em 07/07/2010 | Blog: https://antoniomedeiros.dev/


Configurações preliminares



Antes de iniciar a instalação propriamente dita do MediaWiki, precisamos fazer algumas alterações no seu código para adaptá-lo ao servidor do SourceForge e configurar a base de dados do projeto (a Project database), que será utilizada para armazenamento do conteúdo que será postado futuramente na wiki.

Vamos primeiramente às alterações referentes ao código do MediaWiki.

Extraia o arquivo compactado que você baixou do site do MediaWiki na etapa anterior:

tar -zxvf mediawiki-1.15.4.tar.gz

Será criada uma pasta com o nome "mediawiki-versão" (nesse caso, "mediawiki-1.15.4"). Para facilitar as coisas, vamos renomeá-la para "mediawiki":

mv mediawiki-1.15.4 mediawiki

Vamos agora abrir o arquivo "mediawiki/config/index.php", que é o script de instalação do MediaWiki, e fazer algumas alterações nele. Utilize seu editor de texto favorito para abrí-lo (eu utilizei o KWrite, que detecta a sintaxe do PHP):

kwrite mediawiki/config/index.php

Substitua a seguinte linha (se você baixou o MediaWiki pelo link forneci acima, é a linha 30):

$IP = dirname( dirname( __FILE__ ) );

Por:

$IP = '/home/groups/m/me/meuprojeto/htdocs/mediawiki';

Nesse mesmo arquivo, onde houver "dbsource( "../maintenance" (são quatro linhas: 1099, 1133, 1134, 1167), devemos substituir por "dbsource( "$IP/maintenance".

Assim, devemos substituir:

Na linha 1099: dbsource( "../maintenance/users.sql", $wgDatabase );
Na linha 1133: dbsource( "../maintenance/tables.sql", $wgDatabase );
Na linha 1134: dbsource( "../maintenance/interwiki.sql", $wgDatabase );
Na linha 1167: dbsource( "../maintenance/users.sql", $wgDatabase );

Por:

Na linha 1099: dbsource( "$IP/maintenance/users.sql", $wgDatabase );
Na linha 1133: dbsource( "$IP/maintenance/tables.sql", $wgDatabase );
Na linha 1134: dbsource( "$IP/maintenance/interwiki.sql", $wgDatabase );
Na linha 1167: dbsource( "$IP/maintenance/users.sql", $wgDatabase );

Salve e feche o arquivo "mediawiki/config/index.php".

Se quiser reduzir o tamanho do upload, você pode excluir as traduções do MediaWiki referentes aos idiomas que você não utilizará na sua wiki. Elas se encontram na pasta "mediawiki/languages/messages/". Eu deixei apenas os arquivos "MessagesEn.php" e "MessagesPt_br.php", que representam as traduções para o inglês internacional e o português brasileiro, respectivamente. Com isso eu reduzi o tamanho da pasta "mediawiki" em incríveis 32 MB!

Feito isso, terminamos as alterações com relação ao código do MediaWiki.

Vamos criar agora o arquivo ".htaccess" fora da pasta "mediawiki". Os usuários de Apache já devem saber que esse arquivo nos permite fazer alterações na configuração do Apache de forma local, sem ter acesso à configuração do servidor em si (arquivo "httpd.conf"). No caso do MediaWiki, ele terá dois propósitos interessantes: reduzir o endereço dos artigos (você pode obter mais informações sobre esta utilização em particular aqui) e redirecionar o usuário do endereço da Project web para o endereço da wiki.

Novamente, utilizarei o KWrite. Com o comando a seguir, o arquivo será criado no mesmo diretório do arquivo "mediawiki-1.15.4.tar.gz" e da pasta "mediawiki":

kwrite .htaccess

Copie e cole o seguinte conteúdo para dentro do arquivo, salve-o e feche-o:

RewriteEngine On
RewriteRule ^admin/([a-z]*)/(.*)$ /mediawiki/index.php?action=$1&title=$2 [L,QSA]
RewriteRule ^wiki/(.*)$ /mediawiki/index.php?title=$1 [PT,L,QSA]
RewriteRule ^wiki/*$ /mediawiki/index.php [L,QSA]
RewriteRule ^/*$ /mediawiki/index.php [L,QSA]
RewriteRule ^admin/login /wiki/Special:UserLogin [L,QSA]
RewriteRule ^admin/logout /wiki/Special:UserLogout [L,QSA]
RewriteRule ^admin/sidebar /admin/edit/MediaWiki:Sidebar [L,QSA]

Vamos agora às configurações referentes ao SourceForge.

Faça login no SourceForge, acesse a página do seu projeto ("http://sourceforge.net/projects/meuprojeto/"), aponte para "Project Admin" e clique em "Feature Settings". Clique então no link "Manage" ao lado de "Project Database (MySQL)".

Nessa página, você pode definir as senhas dos três usuários que o SourceForge disponibiliza para que as páginas da sua Project web acessem a Project database (para mais informações, veja a documentação da Project database). Defina as senhas dos três usuários, com destaque para o último usuário ("m12345admin"), que tem privilégios de administrador e será utilizado pelo MediaWiki para acessar a base de dados do seu projeto.

Acesse agora a interface do phpMyAdmin no SourceForge em "https://mysql-m.sourceforge.net/" (para mais informações, veja a documentação do phpMyAdmin no SourceForge) usando o usuário "m12345admin" e a senha que você acabou de definir e crie um banco de dados para o MediaWiki. Sugiro que o nome seja algo como "m12345_wiki".

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurações preliminares
   3. Upload do MediaWiki
   4. Instalação
   5. Utilização
Outros artigos deste autor

Portugol Online - Software livre para facilitar o estudo de algoritmos

Exibindo um splash durante o boot com Splashy

Instalação do ClamAV com DazukoFS

Criando um LiveCD a partir de uma instalação do Debian Lenny

Desmistificando a instalação do Dazuko

Leitura recomendada

Solução open source para clínicas médicas

Desenvolvendo um componente de calendário dinâmico em PHP

JOOMLA no openSUSE em 10 passos

Criando um blog com o CakePHP 2.2.1

Migração de dados no Joomla

  
Comentários
[1] Comentário enviado por cooperrj em 08/07/2010 - 17:42h

Parabéns pelo artigo mestre. Muito bem explicado e é de grande utilidade. Irei deixar nos meus favoritos.

[2] Comentário enviado por removido em 25/06/2017 - 00:33h

Uma alternativa é fazer logon via SSH e realizar todas as operações dentro do servidor.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts