Apache2 MIME типы для js и xml
Будут ли какие-либо проблемы с функционированием / обслуживанием на Apache2, если изменить следующие типы MIME по умолчанию...
.js : application/x-javascript
.xml : application/xml
К этому...
.js : text/javascript
.xml : text/xml
Похоже, мое тестирование показало, что оно будет работать, но я не до конца понимаю назначение типов MIME в том, что касается обслуживания файлов.
2 ответа
Вы должны быть осторожны с типами MIME, так как они отправляются в браузер, чтобы помочь им понять, каким образом отображать определенные файлы.
Изменение этих двух конкретных типов MIME не должно повредить, но я бы очень опасался делать это в целом. MIME-тип отправляется с заголовками для этого конкретного файла, и изменение их может привести к неожиданному поведению с определенными клиентами.
то есть вы не можете точно сказать, что произойдет, изменив типы MIME как таковые, поскольку это зависит от клиента. Вам нужен кто-то с опытом работы со всеми различными веб-браузерами, чтобы рассказать вам об этом, или вам нужно протестировать его самостоятельно. В общем, это то, что вам нужно быть осторожным.
text/xml
может быть проблемой. Некоторые кеширующие прокси переписывают кодировку символов text/*
файлы. В случае XML-файла это может сделать фактическую кодировку символов отличной от кодировки символов, объявленной в самом документе. И кроме того, я думаю, text/xml
был объявлен устаревшим
http://hsivonen.iki.fi/producing-xml/
Так что всегда используйте application/xml
для общих документов XML, и application/*+xml
для конкретных документов, которые имеют свои собственные зарегистрированные типы MIME (application/xul+xml
для XUL, например).
Единственный правильный тип мультимедиа для JavaScript application/javascript
(или же application/ecmascript
, что более строго определено).
http://www.rfc-editor.org/rfc/rfc4329.txt
Тем не менее, многие браузеры не будут заботиться, если вы будете использовать JavaScript как text/plain
или вообще что-то придумать.