我尝试配置的默认网页的IIS 7.5的网站。
请求筛选已打开。 然而.aspx页是允许的,我给自己定的Default.aspx成为该网站的默认页。
如果我浏览到localhost / Default.aspx的我得到一个网页,如预期。
如果我浏览到localhost /我得到
HTTP错误404.7 - 未找到所请求的滤波模块被配置为拒绝文件扩展名。
有任何想法吗?
我尝试配置的默认网页的IIS 7.5的网站。
请求筛选已打开。 然而.aspx页是允许的,我给自己定的Default.aspx成为该网站的默认页。
如果我浏览到localhost / Default.aspx的我得到一个网页,如预期。
如果我浏览到localhost /我得到
HTTP错误404.7 - 未找到所请求的滤波模块被配置为拒绝文件扩展名。
有任何想法吗?
它看起来像请求过滤实际上是过滤一个空白的文件名。 因此,你必须把它添加在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.0不提供文件服务- 404.7错误
您可以通过添加解决:
<requestFiltering>
<fileExtensions allowUnlisted="true">
<remove fileExtension="." />
<add fileExtension="." allowed="true" />
</fileExtensions>
</requestFiltering>
到Web.config文件
您可以通过添加文件扩展名到IIS的请求过滤模块解决这个问题。
务必从按钮的页面上删除任何一项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" />