在Windows Server 2016中使用IIS时,不会提供扩展名为.txt的文件。
得到的状态码是403,访问被拒绝。
为什么?
MIMEtypes.txt在MIMEtypestext/plain列在服务器根目录中。 默认网站inheritance它(连同其他MIMEtypes)。 在涉及到MIMEtypes时,似乎没有重写。
我可以添加另一个MIMEtypes,将新的(组成)扩展名的文件,并将其作为文本文件。
我尝试删除MIMEtypes并再次添加(不使用后缀名称之前的时间段)。
没有其他文件types似乎导致问题。 这只是txt文件,我甚至在服务器上支持php。
在一个评论中,我被问到我得到了哪些子状态错误代码。 日志文件显示这样的行:
2017-05-08 00:54:17 172.31.14.247 GET /foobar/1.txt - 80 - 2.94.45.4 Mozilla/3.0+(compatible;+Indy+Library) - 403 1 5 64
所以答案是403.1(执行访问被禁止)。 IIS试图执行txt文件?
而不是IIS> MIMEtypes ,修改IIS> 处理程序映射 。 不应该有任何(脚本) 处理程序与Path *.txt相关联,但它应该(或回退到“静态文件” * ):
StaticFileModule,DefaultDocumentModule,DirectoryListingModule (IIS 7文档是最新的: handlers元素在IIS 10 / 8.5 / 8.0 / 7.5 / 7.0中未被修改)。