今天经同事提醒突然发现备案文件cert不可访问,报404错误。以前是可以看到乱码内容的。于是建立一个txt文件访问,也是404!防火墙什么都关掉了,访问目录的时候提示403,说明目录还是能找到的,只是文件被限制了。
查看文件属性,是“A”,没有隐藏,查看“安全”权限也是全开放。这是什么原因啊,被人黑掉也不会只改这个吧。BAIDU一下才发现WINDOWS2003不知道啥时候多了个安全特性(也许是哪个安全升级补丁干的事情),就是:非默认或者非注册的MIME属性文件,IIS将拒绝浏览器直接访问。
解决的方法是手动注册MIME属性:IIS管理器->网站->右键->属性->HTTP头->MIME类型->新建,在“扩展名”输入你要的扩展名(我实验的时候没有写“.”),并在“MIME类型”处输入“application/octet-stream”(我实验的时候随便写也可以,然后一路“确定”,并重启IIS就OK了。
微软的解释如下:http://support.microsoft.com/default.aspx?scid=kb;zh-cn;326965
看样子2004年就有这个问题了,我怎么记得曾经可以浏览呢……也许老糊涂了,把在本地用记事本打开记成用IE浏览了!
在Tomcat中解决同样的问题,找到conf目录中的web.xml文件,添加如下内容:
<mime -mapping>
<extension>cert</extension>
</mime><mime -type>application/octet-stream</mime>
对于tomcat下的rar文件无法通过点击下载的问题可以用同样方式处理。