MediaWiki: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
| Linha 161: | Linha 161: | ||
=== [[Removendo SPAM do Mediawiki]] === | === [[Removendo SPAM do Mediawiki]] === | ||
=== Atualizando Mediawiki === | |||
Baixando o novo pacote | |||
<source lang="bash"> | |||
curl -o mediawiki-1.19.8.tar.gz http://dumps.wikimedia.org/mediawiki/1.19/mediawiki-1.19.8.tar.gz | |||
</source> | |||
descompactando e atualizando o cms | |||
<source lang="bash"> | |||
tar xvfz mediawiki-1.19.8.tar.gz -C /home/storage/b/87/a5/teia/public_html/wiki/ --strip-components=1 | |||
</source> | |||
atualizando o banco de dados | |||
<source lang="bash"> | |||
php /home/storage/b/87/a5/teia/public_html/wiki/maintenance/update.php | |||
</source> | |||
com esse procedimento iremos perder a imagem de fundo laranja do topo do wiki, para reparar isso | |||
<source lang="bash"> | |||
cp public_html/wiki/images/headbg.jpg public_html/wiki/skins/monobook/ | |||
</source> | |||
Edição das 22h33min de 10 de setembro de 2013
Usamos a plataforma MediaWiki como solução de wiki.
Até o começo do mês usávamos a versão de 1.13.1 (de 2009) e atualizei para a versão 1.19.7 (legacy lts). A versão escolhida não é a mais recente, atualmente o MediaWiki está na versão 1.21.1, não usei ela porque exige a versão 5.3 do PHP ou superior e usamos no Locaweb a versão 5.2.17, atualizar poderia significar o não funcionamento de outras aplicações que estão rodando no servidor.
Para atualizar o MediaWiki renomeei o diretório wiki para velho-wiki e descompactei o pacote .tar.bz em public_html, depois renomeando para wiki. Dessa forma não mantem arquivos php que cairá em desuso, extensões com versões incompativeis com o nova versão do sistema e sem o arquivo LocalSettings.php ao acessar a parte pública do wiki na web a aplicação enterá que queremos instalar o wiki ou atualizar.
Quando inserimos os mesmos valores do banco de dados o MediaWiki idenfica uma instalação e pergunta se queremos atualizar. Por conta da grande quantidade de artigos esse processo será bem demorado.
Após a atualização eu acabei recompondo alguns ajustes de configurações da antiga atualização, assim como restauração das extensões.
Criei um grupo com o nome human e adicionei todos os usuários que identifiquei como humano nesse grupo, de forma que todos os outros não possam editar ele sem se autenticar. Por sua vez é necessário criar uma conta para editar, além de preencher as informações será necessário validar a operação preenchendo o captcha e confirmando a mensagem enviado para o email indicado no formulário, assim espero que reduza a zero os ataques dos rôbos.
Extensões instaladas e habilitadas
- ConfirmEdit (adiciona o recurso ReCaptcha e já vem por padrão no pacote MediaWiki)
- DynamicArticleList (lista os artigos de um categoria)
- DynamicPageList (listas as ações no sistema)
- FramedVideo (permite embutir video)
- SimpleAntiSpam (filtro de spam)
- SpamBlacklist (filtro de spam)
- TitleBlacklist (filtro de spam)
- WikiEditor (editor de texto avançado )
- SyntaxHighlight_GeSHi (marcações para diferentes linguagens)
ajuste no LocalSettings.php
# habilita DynamicPageList
require_once("$IP/extensions/DynamicPageList/DynamicPageList2.php");
#habilita DynamicArticleList
require_once("$IP/extensions/DynamicArticleList/DynamicArticleList.php");
# habilita FramedVideo
require_once("$IP/extensions/FramedVideo/FramedVideo.php");
# permite mostrar imagem external na página
$wgAllowExternalImages = true;
# ConfirmEdit + QuestyCaptcha
require_once( "$IP/extensions/ConfirmEdit/QuestyCaptcha.php");
$wgCaptchaClass = 'QuestyCaptcha';
$arr = array (
"A question?" => "An answer!",
"Qual o nome desse site?" => "$wgSitename",
'Escreva a palavra secreta, "passion", aqui:' => 'passion',
'Escreva o código, 567, aqui:' => '567',
'Qual é o animal? <img src="http://enderecodeumafotocomcachorro"
alt="" title="" />' => 'cachorro',
);
foreach ( $arr as $key => $value ) {
$wgCaptchaQuestions[] = array( 'question' => $key, 'answer' => $value );
}
$wgGroupPermissions['*' ]['skipcaptcha'] = false;
$wgGroupPermissions['user' ]['skipcaptcha'] = false;
$wgGroupPermissions['human' ]['skipcaptcha'] = true;
$wgGroupPermissions['autoconfirmed']['skipcaptcha'] = false;
$wgGroupPermissions['bot' ]['skipcaptcha'] = true;
$wgGroupPermissions['sysop' ]['skipcaptcha'] = true;
$wgCaptchaTriggers['edit'] = true;
$wgCaptchaTriggers['create'] = true;
$wgCaptchaTriggers['createaccount'] = true;
$wgCaptchaTriggers['contactpage'] = true;
# ajuste para notificações/email
$wgEnableEmail = true;
$wgEnableUserEmail = true;
$wgEmergencyContact = "emailsuporte at teia.org.br";
$wgEnotifUserTalk = false;
$wgEnotifWatchlist = false;
$wgEmailAuthentication = true;
$wgEmailConfirmToEdit = true;
# ajuste para smtp
$wgPasswordSender = "notificacao at teia.org.br";
$wgSMTP = array(
'host' => "servidordeemail.org.br",
'IDHost' => "teia.org.br",
'port' => 587,
'auth' => true,
'username' => "notificacao at teia.org.br",
'password' => "senha"
);
# SimpleAntiSpam
require_once "$IP/extensions/SimpleAntiSpam/SimpleAntiSpam.php";
$wgEnableDnsBlacklist = true;
$wgDnsBlacklistUrls = array("http.dnsbl.sorbs.net.","opm.tornevall.org.");
# SpamBlacklist
require_once "$IP/extensions/SpamBlacklist/SpamBlacklist.php";
$wgSpamBlacklistFiles = array(
"m:Spam blacklist",
"http://en.wikipedia.org/wiki/MediaWiki:Spam-blacklist"
);
# TitleBlacklist
require_once( "$IP/extensions/TitleBlacklist/TitleBlacklist.php" );
$wgTitleBlacklistSources = array(
array(
'type' => TBLSRC_LOCALPAGE,
'src' => 'MediaWiki:Titleblacklist',
),
array(
'type' => TBLSRC_URL,
'src' => 'http://meta.wikimedia.org/w/index.php?title=Title_blacklist&action=raw',
)
);
# WikiEditor
require_once "$IP/extensions/WikiEditor/WikiEditor.php";
$wgDefaultUserOptions['usebetatoolbar'] = 1;
$wgDefaultUserOptions['usebetatoolbar-cgd'] = 1;
$wgDefaultUserOptions['wikieditor-preview'] = 1;
# SyntaxHighlight_GeSHi
require_once("$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");
$wgSyntaxHighlightDefaultLang = "c";
instalações
Para funcionar o ConfirmEdit é necessário ter os módulos Mail e Net_SMTP do PEAR. A instalação do Net_SMTP foi pelo padrão de instalação do PEAR, já o Mail teve quer ser manual, pois necessita da versão => 1.5.6 do PEAR e o instalado no Locaweb é 1.4.9
ajustes no PEAR
<source lang="bash"> mkdir $HOME/pear/php sed -i 's/.:\/usr\/share\/pear/\/usr\/share\/pear:\/home\/storage\/b\/87\/a5\/teia\/pear\/php/g' $HOME/php.ini pear config-set php_ini $HOME/php.ini pear install -o PEAR pear install pear/Net_SMTP curl -O http://download.pear.php.net/package/Mail-1.1.14.tgz tar -zxvf Mail-1.1.14.tgz cp -avr Mail-1.1.14/Mail/ $HOME/pear/php cp -avr Mail-1.1.14/Mail.php $HOME/pear/php </source>
DynamicArticleList
<source lang="bash"> cd public_html/wiki/extensions/ curl -o DynamicArticleList.zip http://www.golf1wiki.de/downloads/DynamicArticleList.zip unzip DynamicArticleList.zip </source>
Highlight_GeSHi
<source lang="bash"> cd public_html/wiki/extensions/SyntaxHighlight_GeSHi/ svn checkout https://geshi.svn.sourceforge.net/svnroot/geshi/trunk/geshi-1.0.X/src/ geshi </source> acrescente require_once( 'geshi/geshi.php' ); no arquivo Highlight_GeSHi.class.php
Removendo SPAM do Mediawiki
Atualizando Mediawiki
Baixando o novo pacote <source lang="bash"> curl -o mediawiki-1.19.8.tar.gz http://dumps.wikimedia.org/mediawiki/1.19/mediawiki-1.19.8.tar.gz </source>
descompactando e atualizando o cms
<source lang="bash">
tar xvfz mediawiki-1.19.8.tar.gz -C /home/storage/b/87/a5/teia/public_html/wiki/ --strip-components=1
</source>
atualizando o banco de dados
<source lang="bash">
php /home/storage/b/87/a5/teia/public_html/wiki/maintenance/update.php
</source>
com esse procedimento iremos perder a imagem de fundo laranja do topo do wiki, para reparar isso
<source lang="bash">
cp public_html/wiki/images/headbg.jpg public_html/wiki/skins/monobook/
</source>
Referências
- http://www.mediawiki.org/wiki/Manual_talk:$wgSMTP
- http://wiki.locaweb.com.br/pt-br/PEAR
- http://answers.bitnami.com/questions/6007/mediawiki-wgsmtp-fails-pear-installed-help
- http://www.cyberciti.biz/tips/rhel-install-php-net-smtp-email-socket.html
- http://answers.bitnami.com/questions/4306/mediawiki-account-confirm-by-email-error
- http://www.danbp.org/w/MediaWiki_SPAM_Control_Kit
- http://wiki.locaweb.com.br/pt-br/Implementando_o_Recaptcha_do_Google
Conteúdo liberado sob a licença
GNU Free Documentation License 1.2