Essa é uma expressão muito interessante que eles têm lá. Sua principal página de manual para URLs curtos diz o seguinte:
These guides are old and are almost entirely bad advice.
De qualquer forma, vamos ver se podemos simplificá-lo um pouco.
rewrite ^/wiki/([^\?]*) /mywiki/index.php?title=$1&$args last;
Note que você não pode sobrepor o caminho 'bonito' (que você colocou no bloco location
, então vamos rodar com ele) e o caminho físico; a norma é usar /wiki/
como o caminho bonito (seu $wgArticlePath
config) e /w/
como o caminho físico (seu $wgScriptPath
config).
Então, tudo somado, algo assim:
location / {
rewrite ^/$ /wiki/ permanent;
}
location /wiki/ {
rewrite ^/wiki/([^\?]*) /mywiki/index.php?title=$1&$args last;
}
... e você precisará do tratamento do PHP de alguma forma, conforme mostrado no exemplo, bem como para atualizar o Settings.php
com as configurações apropriadas de $wgScriptPath
e $wgArticlePath
, além de definir $wgUsePathInfo
para true.