HTTP错误404.7 - 未找到请求筛选模块配置为拒绝文件扩展名

时间:2012-11-19 14:34:27

标签: iis iis-7.5 file-not-found requestfiltering

我正在尝试为IIS 7.5网站配置默认网页。

已启用请求过滤。但是允许.aspx页面,我已将default.aspx设置为网站的默认页面。

如果我浏览到localhost / default.aspx,我会按预期获得一个网页。

如果我浏览到localhost /我得到了

  

HTTP错误404.7 - 未找到   请求过滤模块配置为拒绝文件扩展名。

有什么想法吗?

4 个答案:

答案 0 :(得分:20)

看起来请求过滤实际上是为空白文件名过滤。因此,您必须将其添加到web.config中的请求过滤块:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <security>
      <requestFiltering>
        <fileExtensions allowUnlisted="true">
          <remove fileExtension="." />
          <add fileExtension="." allowed="true" />
        </fileExtensions>
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

现在很明显,但我认为这是一个巨大的问题。


更多信息:IIS 7 Not Serving Files - 404.7 Error

答案 1 :(得分:1)

您可以通过添加:

来解决
<requestFiltering>
    <fileExtensions allowUnlisted="true">
        <remove fileExtension="." />
        <add fileExtension="." allowed="true" />
    </fileExtensions>
</requestFiltering>

到您的Web.Config文件

答案 2 :(得分:0)

您可以通过将文件扩展名添加到IIS的请求过滤模块中来解决此问题。

答案 3 :(得分:0)

请确保从页面上的按钮中删除所有 PostBackURL =“ MyPage.aspx” 。我的猜测是,当包含postbackurl时,IIS会认为其将页面作为文件获取。默认情况下,它拒绝.aspx文件类型。您可以在页面错误中看到这一点。

错误:创建404.7(注意PostBackURL)

<asp:FileUpload runat="server"  ID="uplReplaceFile" ToolTip="Update this file" />

 <asp:Button runat="server" PostBackUrl="MyPage.ascx"  ID="bnHiddenFileUploadListener" OnClick="bnHiddenFileUploadListener_OnClick" />

好:没有错误

<asp:FileUpload runat="server"  ID="uplReplaceFile" ToolTip="Update this file" />

 <asp:Button runat="server" ID="bnHiddenFileUploadListener" OnClick="bnHiddenFileUploadListener_OnClick" />