web-dev-qa-db-ja.com

HTTPエラー404.7-見つかりません要求フィルタリングモジュールは、ファイル拡張子を拒否するように構成されています

IIS 7.5 WebサイトのデフォルトWebページを構成しようとしています。

要求フィルタリングがオンになっています。ただし、.aspxページは許可されていますが、default.aspxをWebサイトのデフォルトページに設定しました。

Localhost/default.aspxを参照すると、期待どおりにWebページが表示されます。

ローカルホストにアクセスした場合/

HTTPエラー404.7-見つかりません要求フィルタリングモジュールは、ファイル拡張子を拒否するように構成されています。

何か案は?

18
mattbloke

要求フィルタリングは、実際には空のファイル名をフィルタリングしているようです。そのため、これを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はファイルを提供していません-404.7エラー

22
mattbloke

以下を追加することで解決できます:

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

web.Configファイルに

2
user8593314

ページのボタンからPostBackURL = "MyPage.aspx"を必ず削除してください。私の推測では、ポストバックURLが含まれていると、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" />
0
Juls

これを解決するには、ファイル拡張子をIISの要求フィルターモジュールに追加します。

0
aditya