Math safe mode
Índice
Usando <math> no MediaWiki com PHP safe_mode
Autor: Mattias Guns (tradução dago) http://xylofaan.ulyssis.org/patch/mediawiki/math_safe_mode/
Estes foram os passos tomados para funcionar <math> numa máquina usando PHP com safe_mode=on.
1) safe_mode_exec_dir
Primeiro, cheque qual é o valor do setting `safe_mode_exec_dir` do PHP no arquivo php.ini
- Sem safe_mode_exec_dir : Edite a configuração apache de seu host e aponte ele para o diretório math da sua instalação wiki:
php_admin_value safe_mode_exec_dir /srv/www/wiki/math/
- safe_mode_exec_dir aponta para algum diretório : Tenha certeza que você pode adicionar algo neste diretório.
2) corrija (patch) o arquivo includes/Math.php
Ele usa crases ` ` para executar o comando, que não funciona em safe-mode. Aplique o patch chamado includes_Math.php_safemode.patch. Ele usa o comando exec() e também elimina o escaping o que, por alguma razão, é necessário. Ele também não checa se o arquivo criado existe, que é necessário se você não quer (ou não pode) adicionar o diretório ao safe_mode_include_dir.
3) copie o script texvc-wrapper
Como os dados não são "escaped", espaços no código latex confundem o texvc. Escrevi um "wrapper" que corrige isto agrupando os argumentos de forma correta. Copie o arquivo script texvc-wrapper para o diretório setado no php.ini como safe_mode_exec_dir. Depois, edite o "wrapper" tal que `TEXVC` aponte para o executável texvc de sua instalação. Não esqueça de tornar o wrapper executável.
4) edit your LocalSettings.php
Lastly, edit your LocalSettings.php:
- Of course, enable <math> support
$wgUseTeX = true;
- enable the features provided by the patch
define('FIX_TEX_SAFE_MODE', 1);
- point the Texvc var to the wrapper script
$wgTexvc = "{$IP}/math/texvc-wrapper";