Я обслуживаю файлы .JSON, но даже если файл существует, IIS продолжает выдавать ошибку 404 при обращении к любому из файлов. Я попытался переименовать один из файлов в .JS, и это работает.
Любой указатель, какие настройки могут вызвать эту проблему?
windows-server-2003
iis
http-status-code-404
Адриан Годонг
источник
источник
У меня такая же проблема. IIS выполняет то, что называется фильтрацией MIME-типов. Если он не знает тип MIME конкретного расширения файла, он возвращает ошибку 404.
На IIS <7: откройте свойства сайта (или сервера). Нажмите на вкладку HTTP-заголовок . Нажмите на кнопку MIME Types . Добавьте тип файла * с типом MIME «application / octet-stream».
Для IIS 7: Откройте диспетчер IIS. Нажмите на сервер или веб-сайт. Дважды щелкните значок функции MIME Types . На панели действий нажмите кнопку Добавить . Заполните поле «Расширение имени файла» с помощью *, а в поле MIME Type - «application / octet-stream».
источник
Я добавил тип MIME
.json
-text/json
на сайт в IIS для просмотра в браузере в виде текста.источник
Чтобы объединить ответы в еще один общий ответ:
Вот предостережение:
Если вы сталкиваетесь с подобной проблемой, откройте файлы веб-журнала веб-сайта и посмотрите код дополнительного состояния (например, 404 3), чтобы точно определить, почему ваш веб-сайт не обслуживает контент для IIS 6, или
в IIS 7.
источник
У меня тоже была эта проблема - и проблема оказалась в правах доступа к папке, где хранился файл json. Я ответил на аналогичный вопрос здесь .
Все эти люди правильно сказали, что вам нужно добавить тип MIME.
Тип MIME включает расширение файла на сервере, а Mapping Handler сообщает IIS, что с ним делать.
Таким образом, вам также нужно добавить обработчик сопоставления , и для этого вам необходимо установить функцию Windows под названием Classic Asp для обработки сопоставления.
Вот как добавить обработчик сопоставления:
Handler Mappings
Add a Script Map
*.json
C:\WINDOWS\system32\inetsrv\asp.dll
JSON
(вы можете называть это как угодно)Кроме того , некоторые люди скажут вам использовать `применение / х-JavaScript» в качестве приложения мимов-типа, но JSON не JavaScript, сами по себе (это является подмножеством, однако) , и поэтому оно должно быть „применение / JSON“ вместо , поскольку это IANA-зарегистрированный тип медиа для JSON.
источник
Также проверьте фильтрацию запросов в IIS. Если ".json" там и заблокирован, больше ничего не будет работать.
источник