问题
- 在 gearhost 上部署了用到 json 文件的页面,但是显示不正常
- 检查json文件路径也没有问题,但返回了404
- 放在根目录测试也一样,如下图所示
解决方法
- 熟练掌握 IIS 的大佬们请自觉忽略本文章 ~
- gearhost 的服务器是 IIS,正常本地操作 IIS 应该是这样的:
IIS6.0
- 打开IIS添加Mime项
关联扩展名: *.json
内容类型(MIME):application/x-JavaScript - 添加映射:
位置在IIS对应站点右键属性:”主目录”-”应用程序设置”-”配置”-”映射”-”添加”,会打开”添加/编辑应用程序扩展名映射”
扩展名: .json
运行文件:C:\WINDOWS\system32\inetsrv\asp.dll
动作:GET,POST
IIS7.x IIS8
-
在“MIME类型”中“添加”一个文件扩展名为“.json",MIME类型为text/json(也可以是application/x-javascript)
-
然后再在“处理程序映射”中“添加脚本映射”,请求路径为:*.json,可执行文件为C:/Windows/System32/inetsrv/asp.dll。
如果没找到asp.dll,到控制面板–>程序–>打开和关闭Windows功能—>InterNet信息服务—>万维网服务–>应用程序开发功能,打开“ASP支持”。当即打开,就可以找到asp.dll文件。
内容类型(MIME):text/json
- 但是在 gearhost 上不能像本地 IIS 一样直接添加 MIME 类型
- 于是就有了另一种方法:
- 在
/site/wwwroot
下建立web.config
- 在
web.config
中写入以下内容注册 MIME 类型
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
</configuration>
测试效果: