Специальные символы MediaWiki в вопросе имени файла - PullRequest
1 голос
/ 10 ноября 2010

Когда я загружаю файл в mediawiki со специальными символами в имени, он превращает имя файла в нечто, похожее на это:

Waterford_ (Dáil_à ‰ ireann_constituency) .png

когда он действительно записывает его в файл, когда он должен выглядеть следующим образом:

Waterford_ (Dáil_Éireann_constituency) .png

Это означает, что когда другая страница ссылается на этот файл, она отображается как неработающая ссылка на изображение, потому что ищет

http://mysite.com/wiki/images/Waterford_(Dáil_Éireann_constituency).png

Я не хочу запрещать людям использовать специальные символы, так как они часто копируют файлы из Википедии, которые поддерживают специальные символы, и я думаю, что это как-то связано с тем, как мой хост обрабатывает файлы. Поэтому было бы предпочтительно, если бы был какой-то способ перехватить способ, которым mediawiki создает файлы, чтобы путь к файлу был свободен от специальных символов, в то время как все ссылки по-прежнему работали бы.

Ответы [ 2 ]

2 голосов
/ 18 ноября 2010

MediaWiki на 100% безопасен для UTF-8, но что-то в вашей конфигурации Apache / PHP искажает UTF-8 в ISO 8859-1 (Latin1).Для начала убедитесь, что в вашей установке PHP включена mbstring, как указано здесь:

http://www.mediawiki.org/wiki/PHP_configuration

Если вы застряли с испорченным хостом, то на этой странице Talk есть некоторые подсказкиза то, что ты вонзил нож в вики, чтобы он тупо перебил имена файлов:

http://www.mediawiki.org/wiki/Manual_talk:Configuring_file_uploads#Image_File_Names

0 голосов
/ 10 ноября 2010

Я не могу говорить о том, как и где это сделать в Mediawiki, но хорошим способом сделать это было бы urlencode() имя файла.Имена файлов в процентах должны работать на всех платформах, и при необходимости их легко восстановить в правильной форме.

...