Для сайта, на котором работает Mediawiki, у меня есть этот конфиг для чистых URL:
rewrite ^/wiki/([^?]*)(?:\?(.*))? /wiki/index.php?title=$1&$2 last;
Это прекрасно работает, кроме случаев, когда заголовок страницы должен иметь знак вопроса. Для URL, например /wiki/Who_is_your_daddy%3F_It_is_me
, правильный переписанный URL-адрес - /wiki/index.php?title=Who_is_your_daddy%3F_It_is_me
. Тем не менее, Nginx переписывается в /wiki/index.php?title=Who_is_your_daddy&_It_is_me
.
Какое правильное правило перезаписи?