Загрузка Docx из IE - установка типов MIME в IIS
Я уверен, что есть простой ответ на этот вопрос.
У меня есть файл docx, который появляется при попытке загрузки (документ не может быть найден).....doc в порядке .txt также прекрасен. Я уверен, что это всего лишь настройка iis, разрешения на сервере одинаковы для всех файлов.
Ответы
Ответ 1
Да, это просто параметр IIS: по умолчанию он будет обслуживать только файлы, для которых расширение соответствует определенному типу MIME.
Чтобы разрешить загрузку файлов .docx, выполните действия из статьи KB, приведенной выше:
- Откройте консоль управления Microsoft IIS (MMC), щелкните правой кнопкой мыши имя локального компьютера и выберите "Свойства".
- Нажмите MIME-типы.
- Нажмите "Создать".
- В поле Расширение введите расширение имени файла, которое вы хотите (в данном случае,.docx).
- В поле MIME Type введите application/vnd.openxmlformats-officedocument.wordprocessingml.document (благодаря разработчику @web для указания этого типа MIME, который отменяет "приложение/msword" из моего исходного ответа).
- Применить новые настройки. Обратите внимание, что вы должны перезапустить службу публикации World Wide Web или дождаться перезагрузки рабочего процесса, чтобы изменения вступили в силу. В этом примере IIS теперь обслуживает файлы с расширением .docx.
Обратите внимание, что статья KB использует общий тип MIME для приложения/октетного потока: хотя обычно это должно работать, если существует более специфический тип MIME, например application/msword, всегда лучше использовать его.
Ответ 2
На шаге 5 вышеупомянутого решения вы сказали
В поле MIME Type введите application/msword.
Тип MIME "приложение/msword" является типом для файлов ".doc" 2003 года. Правильный тип MIME для Word 2007 ".docx":
Приложение/vnd.openxmlformats-officedocument.wordprocessingml.document
См. этот пост.
Ответ 3
Спасибо, что это очень полезно.
Если вам интересен тип MIME для .pptx(Powerpoint 2007),
application/vnd.openxmlformats-officedocument.presentationml.presentation
и .xlsx(Excel 2007)
Приложение/vnd.openxmlformats-officedocument.spreadsheetml.sheet
[Эти места транспонированы. Я исправил сейчас, спасибо, что указал Свену.]
Ответ 4
Если нет типа mime, связанного с расширением в IIS (6.0 и выше), он даст вам 404. См. Запросы для статических файлов возвращают 404 ошибка (IIS 6.0)
Кроме этого, и только потому, что вы не указали, где появляется ошибка: когда вы запрещаете кеширование в заголовке, подобное поведение может возникать на клиенте. Но это общая проблема и не привязана к .docx.