错误 404.3 未找到 JSON 文件
Posted
技术标签:
【中文标题】错误 404.3 未找到 JSON 文件【英文标题】:ERROR 404.3 Not Found for JSON file 【发布时间】:2013-04-11 08:43:06 【问题描述】:即使在激活所有“应用程序开发功能”之后,我在“Internet 信息服务 7.5”上使用 AJAX 调用调用的 JSON 文件也收到“错误 404.3 未找到”。除了 JSON 文件,所有其他文件都在加载。
我正在本地机器上的 IIS 服务器上运行 html 页面。
如果我直接打开文件,则完全没有问题。当我在在线服务器上托管文件时,它工作正常。
任何快速帮助将不胜感激。
【问题讨论】:
【参考方案1】:正如@ancajic 所建议的,我将以下代码放在了我的 web.config 文件中的 connectionString 标记之后,并且它起作用了。
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
【讨论】:
谢谢,我无法确定将正如@elasticman所说,需要打开IIS Manager -> Mime types -> 添加一个新的mime type
扩展名:.json MIME 类型:application/json
但对我来说,这还不够。我有一个 ASP.NET MVC 4 应用程序,我必须修改我的根 Web.config 文件。
插入
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
在你的某个地方
<system.webServer>
...
</system.webServer>
【讨论】:
【参考方案3】:您尝试接收的文件是否在同一个域中?还是您从另一台服务器获取 json?如果它托管在不同的域上,由于同源策略,您必须使用 JSONP。
【讨论】:
同域,下面是文件夹结构:根文件夹 index.html - data/data.json - js/js.js 好的,问题是 IIS 默认没有 JSON 文件类型 (MIME),所以你必须设置它: 为整个服务器设置: 1. 打开你的服务器的属性您的 IIS 管理器并选择 MIME 类型。 2. 使用“New”并输入“JSON”作为扩展名,输入“application/json”作为 MIME。 感谢elasticman,iis没有json文件类型,无法识别。【参考方案4】:选项 1
转到 II
选择网站
在 IIs 下双击 Mime 类型图标
点击右侧的添加链接
文件扩展名 = .json Mime 类型 = 应用程序/json
点击确定。
选项 2
像这样更新你的 web.config 文件
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
希望您的问题得到解决
【讨论】:
【参考方案5】:如果您将 IIS Express 与 Visual Studio 一起使用,IIS 管理器将不适用于 IIS Express。相反,您需要从 %userprofile%\documents\IISExpress\config\applicationhost.config 打开此配置文件并插入
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
以及所有其他预定义的 mime 类型。
【讨论】:
【参考方案6】:我在IIS上应用了以下设置是对的。
1.打开IIS管理器
2.显示 IIS 服务器的属性
3.点击 MIME Types 然后添加 JSON 扩展:
文件扩展名:.json
MIME 类型:application/json
4.返回 IIS 服务器的属性
5.点击处理程序映射
添加脚本映射
请求路径:*.json
可执行文件:C:\WINDOWS\system32\inetsrv\asp.dll 名称:JSON
【讨论】:
【参考方案7】:我没有同样的问题,但对我来说(Windows Server 2003 IIS 6)MIME 类型 application/json 不起作用。我使用 text/plain 并且工作完美(您不需要重新启动服务器)
【讨论】:
【参考方案8】:使用 Azure 应用服务解决此问题:
使用 FTP 或 Kudu 仪表板将此文件添加到 wwwroot 上一级--
/site/applicationHost.xdt:
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" xdt:Transform="InsertBefore(/configuration/system.webServer/staticContent/*[1])" />
</staticContent>
</system.webServer>
</configuration>
然后,在 Azure 门户中的应用程序设置下,添加一个处理程序映射:
.json C:\WINDOWS\system32\inetsrv\asp.dll
【讨论】:
以上是关于错误 404.3 未找到 JSON 文件的主要内容,如果未能解决你的问题,请参考以下文章
IIS 和 PHP:HTTP 错误 404.3 - 未找到:由于扩展配置,无法提供您请求的页面
在IIS上抛出异常的WCF托管(没有权限和HTTP错误404.3 - 未找到)
[ app.json 文件内容错误] app.json: app.json 未找到?
HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
IIS内部署WCF服务出错:HTTP 错误 404.3 - Not Found
HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。