Mudanças entre as edições de "Math safe mode"
(Nova página: Mediawiki <math> support with PHP safe_mode =========================================== Author: Mattias Guns <tias@ulyssis.org> http://xylofaan.ulyssis.org/patch/mediawiki/math_safe_m...) |
(→4) edit your LocalSettings.php) |
||
(5 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
− | + | ==Usando <nowiki><math></nowiki> no MediaWiki com PHP safe_mode== | |
− | |||
− | + | Autor: Mattias Guns (tradução [[dago]]) | |
http://xylofaan.ulyssis.org/patch/mediawiki/math_safe_mode/ | http://xylofaan.ulyssis.org/patch/mediawiki/math_safe_mode/ | ||
− | + | Estes foram os passos tomados para funcionar <nowiki><math></nowiki> numa máquina usando PHP com safe_mode=on. | |
− | |||
− | 1) safe_mode_exec_dir | + | ===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: | |
− | `safe_mode_exec_dir` | + | 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. |
− | |||
− | |||
− | |||
− | * safe_mode_exec_dir | ||
− | |||
− | 2) patch includes/Math.php | + | ===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) | + | ===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. | |
− | |||
− | |||
− | script | ||
− | |||
− | |||
− | |||
− | |||
− | 4) | + | ===4) edite seu LocalSettings.php=== |
− | + | Por último, edite seu LocalSettings.php: | |
− | + | * habilite suporte a <nowiki><math></nowiki> | |
− | + | $wgUseTeX = true; | |
− | $wgUseTeX | + | * habilite as características fornecidas pelo patch. |
− | + | define('FIX_TEX_SAFE_MODE', 1); | |
− | define('FIX_TEX_SAFE_MODE', 1); | + | * aponte a variável Texvc para o wrapper |
− | + | $wgTexvc = "{$IP}/math/texvc-wrapper"; | |
− | $wgTexvc |
Edição atual tal como às 12h19min de 24 de abril de 2009
Í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) edite seu LocalSettings.php
Por último, edite seu LocalSettings.php:
- habilite suporte a <math>
$wgUseTeX = true;
- habilite as características fornecidas pelo patch.
define('FIX_TEX_SAFE_MODE', 1);
- aponte a variável Texvc para o wrapper
$wgTexvc = "{$IP}/math/texvc-wrapper";