IIS を実行しているサーバーでホストされている Web サイトにアクセスすると、HTTP エラー 405.0 が発生する

この記事は、 HTTP エラー 405.0 の解決に役立ちます。 このエラーは、インターネット インフォメーション サービス (IIS) を実行しているサーバーでホストされている Web サイトにアクセスするときに発生します。

元の製品バージョン:インターネット インフォメーション サービス 7.0 以降のバージョン
元の KB 番号: 942051

現象

次のような状況を想定します。 インターネット インフォメーション サービス (IIS) 7.0 以降を実行しているサーバーでホストされている Web サイトがあります。 ユーザーがこの Web サイトにアクセスすると、次の例のようなエラー メッセージが表示されます。

アプリケーション「アプリケーション名」でのサーバー エラー
HTTP エラー 405.0 - メソッドが許可されていません
HRESULT: 0x80070001
HRESULT の説明
無効なメソッド (HTTP 動詞) が使用されているため、探しているページを表示できません。

原因 1

この問題は、クライアントが HTTP 仕様に準拠しない HTTP メソッドを使用して Hypertext Transfer Protocol (HTTP) 要求を行うためです。

原因 2

この問題は、クライアントがハンドラーによって処理されるように構成されたページにメソッドを POST 送信して HTTP 要求を StaticFile 行うためです。 たとえば、クライアントはメソッドを POST 静的 HTML ページに送信します。 ただし、ハンドラー用 StaticFile に構成されたページでは、 メソッドは POST サポートされていません。

原因 3

WebDAV 発行は HTTP PUT に干渉します。

原因 1 の解決策

クライアントが、有効な HTTP メソッドを含む要求を送信することを確認します。 そのために、以下の手順に従ってください。

  1. [スタート] を選択し、[検索の開始] ボックスに「メモ帳」と入力します。[メモ帳] を右クリックして [管理者として実行] を選択します。

    注:

    管理者パスワードの入力または確認を求められた場合は、パスワードを入力するか、確認を入力します。

  2. [ファイル] メニューの [開く] を選択します。 [ ファイル名 ] ボックスに「」と入力 %windir%\system32\inetsrv\config\applicationhost.configし、[ 開く] を選択します。

  3. ApplicationHost.config ファイルで、タグを<handlers>見つけます。

  4. すべてのハンドラーで有効な HTTP メソッドが使用されていることを確認します。

  5. ApplicationHost.config ファイルを保存します。

原因 2 の解決策

ハンドラー以外のハンドラーによって処理されるように構成されているページに POST 要求を StaticFile 送信します。 たとえば、 ASPClassic ハンドラーです。 または、ハンドラーによって処理される要求を StaticFile 、POST 要求ではなく GET 要求になるように変更します。

原因 3 の解決策

Web.config ファイルから WebDAV モジュールとハンドラーを削除します。 また、使用されていない場合は、コンピューターから WebDAV 発行機能を削除します。 そのために、以下の手順に従ってください。

  1. [スタート] を選択し、[検索の開始] ボックスに「Windows 機能のオンとオフを切り替える」と入力し、[Windows 機能のオンとオフを切り替える] を選択します。
  2. [Windows の機能] ウィンドウで、[インターネット インフォメーション サービス] -[World Wide Web サービス] ->[一般的な HTTP 機能] の [>] を展開します。
  3. WebDAV 発行機能をオフにします。