次の方法で共有


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 メソッドを使用してハイパーテキスト転送プロトコル (HTTP) 要求を行うためです。

原因 2

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

原因 3

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

原因 1 の解決策

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

  1. [スタート] を選択し、[スタート検索] ボックスに「Notepad」と入力し、Notepad を右クリックして、[管理者として実行] を選択

    Note

    管理者パスワードまたは確認を求めるメッセージが表示されたら、パスワードを入力するか、確認を入力します。

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

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

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

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

原因 2 の解決策

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

原因 3 の解決策

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

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