Принудительно IE7 + для загрузки XML-файла, используя Apache2 - PullRequest
1 голос
/ 17 мая 2011

маленький вопрос, который меня бесит!

У меня есть XML-файл, который я хочу загрузить из браузера.Я установил правильный тип MIME и вложение через Apache2 .htaccess

xpt - это файл с первой строкой в ​​виде обычного XML-файла

 <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 

Мой .htaccess выглядит следующим образом

    AddType application/octet-stream .xpt
   <FilesMatch "\.(?i:xpt)$">
       ForceType application/octet-stream
       Header set Content-Disposition attachment
   </FilesMatch>

При просмотре с помощью инструментов разработчика Explorer (F12) заголовок на вкладках "Сети" выглядит правильно.У любого другого браузера нет проблем, IE7 + да.

Есть ли решение, не прибегая к обертке?
Есть ли что-то, что я пропустил в своей конфигурации?

TIA

Ответы [ 2 ]

1 голос
/ 18 мая 2011

Мне удалось найти решение в этой неясной теме сообщества drupal: http://drupal.org/node/244852#comment-979530

Мое решение работает так:

AddType application/octet-stream .xpt

<FilesMatch "\.(?i:xpt)$">
  ForceType application/force-download
  Header set Content-Disposition attachment
  Header set Content-Description File-Transfer
  Header set Cache-Control "store, no-cache, must-revalidate"
</FilesMatch>

До сих пор не понимаю, почему IE7 так сильно отличается от других браузеров. Он также игнорирует application / octet-stream при получении в качестве заголовка.

1 голос
/ 17 мая 2011

Похоже, вы правильный путь, но имеют ли ваши XML-файлы расширение .xpt?Также проверьте MIME .

AddType text/xml .xml
<FilesMatch "\.(?i:xml)$">
    ForceType text/xml
    Header set Content-Disposition attachment
</FilesMatch>
...