我正在尝试为IIS 7.5网站配置默认网页。
已启用请求过滤。但是允许.aspx页面,我已将default.aspx设置为网站的默认页面。
如果我浏览到localhost / default.aspx,我会按预期获得一个网页。
如果我浏览到localhost /我得到了
HTTP错误404.7 - 未找到 请求过滤模块配置为拒绝文件扩展名。
有什么想法吗?
答案 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>
现在很明显,但我认为这是一个巨大的问题。
答案 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" />