5

IIS 8.5 Windows 2012 R2 の既定のドキュメントの既定の設定を持つ Web サイトがあります。

<system.webServer>
  <defaultDocument enabled="true">
    <files>
      <add value="Default.aspx" />
      <add value="Default.htm" />
      <add value="Default.asp" />
      <add value="index.htm" />
      <add value="index.html" />
      <add value="iisstart.htm" />
    </files>
  </defaultDocument>
</system.webServer>

ファイル名のない URL (mysite.com/Content/) を参照すると、IIS は default.aspx のみを試行し、リスト内の他のファイル (index.html) は試行しません。IIS が default.aspx を読み込もうとすると、404 が返されます。奇妙なことに、そのディレクトリには default.aspx ファイルがなく、index.html が存在します。index.html を直接参照すると、ページが正しく表示されます。デフォルト ドキュメントに関する Microsoftのドキュメントによると、存在するファイルが見つかるまで、リスト内の次のファイルを試行する必要があります。

サブディレクトリにweb.configファイルを明示的に追加しました

<defaultDocument enabled="true">
  <files>
      <clear />
       <add value="index.html" />
   </files>
 </defaultDocument>

IIS はまだ default.aspx を使用しようとしています。誰もこれに遭遇したことがありますか?これが文書化されているように機能しない理由について何か提案はありますか?

4

4 に答える 4

3
  1. 古い URL 書き換えモジュールを削除または無効にしてみてください。(一時的に)
  2. 認証が必要な場合は、ログイン ページが存在することを確認してください。

(他の誰かがこの質問を読んだ場合に備えて、上記からコピーした他の提案を含めました)

  1. ソースコード内のルーティングを確認してください。
  2. リダイレクトまたはインターセプト呼び出しを引き起こす可能性のある特別なモジュールまたはハンドラーを確認します。
于 2015-05-11T13:28:11.227 に答える
-1

既定のドキュメントを無効にして、ディレクトリの参照を有効にしている場合、IIS は、ルート ディレクトリの要求がブラウザーから届くと、ディレクトリの一覧を返します。既定のドキュメントとディレクトリの参照の両方を無効にすると、IIS は "HTTP 404 ファイルが存在しません" エラーをブラウザーに送信します。

そのため、IIS で既定のドキュメント オプションを有効にして、IIS をリセットしてください。

于 2015-05-11T13:28:01.347 に答える
-1

index.html をデフォルトのページとして使用する場合。デフォルトのドキュメントをクリックできるようになった後、iisのデフォルトのWebサイトをクリックする必要があります。今!インデックスをデフォルトのページとして追加できます。

于 2015-05-11T13:53:37.973 に答える