#outlook #mediawiki #email-templates #mediawiki-installation #oft
#outlook #mediawiki #электронная почта-шаблоны #mediawiki-установка #oft
Вопрос:
В моей частной вики я разрешил загрузку шаблонов электронной почты Microsoft Outlook 2016 (.oft) с помощью $wgFileExtensions
. Но при загрузке файла oft я сталкиваюсь с ошибкой File extension ".oft" does not match the detected MIME type of the file (application/sla)
.
Есть ли способ исправить или преодолеть это? Или, возможно, способ пропустить проверки MIME только для файлов oft? И если да, не могли бы вы помочь мне с необходимым кодом, пожалуйста?
Я бы также хотел, чтобы Outlook запускался при нажатии на ссылку на файл. Но это не так важно, как исправление ошибки… Спасибо за любую помощь.
Ответ №1:
Есть быстрый и более безопасный способ.
Самым простым вариантом было бы разрешить загрузку в тех случаях, когда тип MIME не соответствует расширению. Вы можете сделать это, добавив следующее в свой LocalSettings.php (убедившись, что в другой строке нет конфликтующего оператора:
$wgStrictFileExtensions = "false";
Отключение $wgStrictFileExtensions представляет серьезную угрозу безопасности, как указано в документации Mediawiki, поэтому делайте это, только если вы доверяете права на загрузку всем пользователям. Это выдаст пользователям предупреждение о типе файла, но файл все равно будет загружен. Чтобы вообще не проверять MediaWiki, отключите $wgVerifyMimeType с помощью:
$wgVerifyMimeType= "false";
Более правильный способ — дать MediaWiki знать, что ‘application / sla’ подходит для файлов .oft. База данных MIME-типа по умолчанию ожидает, что файлы с этим расширением будут шаблонами формул ODF.
Вы можете изменить это, предоставив MediaWiki свой собственный файл определения типов MIME.
В Linux у вас может быть — например, в Debian, это /etc/mime.types. Вы можете добавить строку
application/sla oft
И убедитесь, что LocalSettings.php для $wgMimeTypeFile установлено значение ссылки на этот файл. В примере Debian:
$wgMimeTypeFile = "/etc/mime.types";
Ответ №2:
Прочитав дальше, я, наконец, нашел нехакерное решение для загрузки .oft
:
- Если это еще не сделано, добавьте
.oft
файлы в список поддерживаемых расширений ($wgFileExtensions
) - В MediaWiki 1.34.2 отредактируйте
/includes/libs/mime/mime.types
и изменитеapplication/sla stl
наapplication/sla stl oft
. (Насколько я знаю, этот каталог изменен на 1.35 )
Вот и все! Теперь я могу загружать .oft
файлы без снижения уровня безопасности и внесения изменений в него.
Надеюсь, это поможет другим, кто борется с этим.