「405 メソッドは許可されていません」エラーを修正する方法? (8つの方法)

公開: 2023-07-05

「405 メソッドは許可されていません」ステータス コードとは何ですか?

405 メソッドは許可されていません HTTP 応答ステータス コードで、サーバーは使用されたリクエスト メソッドを認識できるが、対象のリソースではそのメソッドをサポートしていないことを示します。

簡単に言うと、ブラウザはリクエストしたページにアクセスできず、Web サイト訪問者にはページが表示されるのではなく、「405 メソッドは許可されていません」というエラー メッセージが表示されます。


目次
「405 メソッドは許可されていません」ステータス コードとは何ですか?
「405 Not allowed」エラーはブラウザごとにどのように表示されますか?
「405 メソッドは許可されていません」エラーの原因は何ですか?
405メソッドが許可されていないエラーを修正する方法?
405 エラーを処理するためのベスト プラクティス
結論
よくある質問

その仕組みは次のとおりです。クライアントがサーバーにリクエストを行うとき、GET、POST、PUT、DELETE などの HTTP メソッドを指定します。サーバーは、リクエストされたリソースがその特定のメソッドをサポートしているかどうかを判断します。 そうでない場合、サーバーは 405 Method Not allowed エラーを返します。

もう 1 つ留意すべき点は、エラー 404 とエラー 405 をよく混同する人が多いことです。ただし、404 エラーは、URL が存在しないか、URL を間違って入力した場合に発生することを覚えておくことが重要です。 一方、「405 Method Not allowed」エラーの場合、サーバーは要求されたリソースが利用可能であることを確認しますが、HTTP メソッドの非互換性のため、要求は拒否されます。

405 Method Not allowed エラーはクライアント側からトリガーされることが多いため、クライアント側のエラーとみなされます。 ただし、Web サーバーからトリガーすることもできます。

表示される可能性のある「405 Method Not allowed」エラーのバリエーションを確認してください。

  • 405 許可されていません
  • 許可されていないメソッド
  • HTTP エラー 405
  • HTTP 405 メソッドは許可されていません
  • HTTP エラー 405 - メソッドは許可されていません

「405 Not allowed」エラーはブラウザごとにどのように表示されますか?

グーグルクローム

405 Not Allowed on Chrome
405 は Chrome では許可されません

Firefox

405 Not Allowed on Firefox
405 は Firefox では許可されません

サファリ

405 Not Allowed on Safari
405 Safari では許可されていません

「405 メソッドは許可されていません」エラーの原因は何ですか?

実際には、「405 Method Not allowed」エラーの正確な原因を特定するのは難しい場合があります。 したがって、このエラーが一般的に発生する一般的な理由をいくつか紹介します。 彼らです:

  • サポートされていない HTTP メソッド: 405 エラーが発生する主な理由の 1 つは、特定の URL で許可されていない HTTP メソッドを使用しようとしたことです。 たとえば、サーバーが特定のリソースに対する GET リクエストのみを許可し、クライアントが PUT メソッドを使用しようとすると、405 エラーが返されます。
  • ヘッダーの欠落または不正: HTTP ヘッダーは、リクエストまたはクライアントに関する追加情報を提供します。 ヘッダーが欠落しているか、形式が不適切な場合、サーバーはリクエストを拒否し、405 エラーで応答することがあります。
  • サーバーの構成ミス:場合によっては、サーバーの構成が間違っているため、特定の HTTP メソッドが禁止されることがあります。 これは、サーバーのセットアップ中の見落とし、またはサーバー ソフトウェアの構成ミスが原因である可能性があります。
  • クロスオリジン リソース共有 (CORS) の問題:クロスオリジン リクエストは、クライアントが、リクエストされたリソースをホストしているドメインとは異なるドメインにリクエストを行うと発生します。 サーバー側で必要なヘッダーが設定されていないなど、CORS 関連の問題により 405 エラーが発生する可能性があります。

読む: 4XX エラーとは何ですか? 4XX HTTP ステータス コードのガイド


405メソッドが許可されていないエラーを修正する方法?

トラブルシューティングの手順に直接進む前に、まず Web サイトの完全なバックアップを作成する必要があります。 これは、トラブルシューティング手順中に問題が発生した場合に、Web サイトを元に戻すのに役立ちます。

この機能は通常、多くの Web ホスティング サービス プロバイダーによって提供されています。 ただし、 WPOvenのホスティング アカウントをお持ちの場合は、Amazon ベースの S3 自動バックアップを使用することで作業がさらに簡単になります。

この予防手順を完了したら、トラブルシューティング手順を開始します。 早速、始めましょう!

  • 正しい URL を入力していることを確認してください
  • 最近の WordPress アップデートを元に戻す
  • データベースに変更がないか確認してください
  • サーバー側のログを確認する
  • Web サーバーの構成を検査する
  • アプリケーションのコードとスクリプトを検査する
  • Aレコードを確認する
  • Web ホスティングプロバイダーに連絡してください

1. 正しい URL を入力していることを確認してください

一般に誰もが犯す最も一般的な間違いの 1 つは、特に急いでいるときに間違った URL を入力することです。 その結果、ブラウザは存在しない Web ページを表示できなくなります。

したがって、入力ボタンを押す前に、正しい URL を入力していることを確認し、URL にスペルミスや文字の欠落がないか確認してください。 このトラブルシューティング手順は非常に簡単に思えるかもしれませんが、実際には問題を解決するのに効果的な場合があります。

2. 最近の WordPress アップデートを元に戻す

間違いなく、アップデートにより、新しく追加された機能、バグ修正、セキュリティ パッチなどの興味深いものがもたらされます。 ただし、その意図は良いものであっても、これらのアップデートにより問題が発生することがあります。

更新前には 405 Method Not allowed エラーが表示されなかった場合は、最新の更新が主な原因であることを意味します。 これには、最近のプラグインやテーマの更新も含まれる場合があります。

最近の WordPress アップデートが問題の原因であると思われる場合は、以前のバージョンのアップデートに戻してみてください。 これを行うには、WordPress ダウングレード プラグインを使用します。 プラグインをインストールして有効化するだけで、WordPress のバージョンが自動的にダウングレードされます。


読む: WordPress サイトを 5 分でバックアップする方法? (4つの方法)


3. データベースに変更がないか確認します

通常、上記のトラブルシューティング手順はプラグインまたはテーマ関連の問題を解決するのに十分ですが、プラグインによって加えられたすべての変更を元に戻せることを保証するものではありません。

これは特に WordPress プラグインに当てはまります。 これらのプラグインをインストールしてアクティブ化すると、データベースへの完全なアクセスが許可され、要件に応じて必要な変更を加えることができるようになります。

まずプラグインをアンインストールまたは無効化してみてください。

Deactivate WordPress Plugins
WordPress プラグインを無効にする

プラグインをアンインストールしても、変更を元に戻すことはできません。 したがって、データベースをチェックして、予期しない変更が加えられていないかどうかを確認する必要があります。

手順は、使用している Web ホスティング プロバイダーによって異なる場合があります。 WPOven では、すべてのサーバーにデータベース マネージャーである DBAdmin が含まれており、データベースの編集、インポート、エクスポートに使用できます。

データベース マネージャーにアクセスするには、次の手順に従う必要があります。

1. WPOven アカウントにログインします

2. [サイト] タブをクリックし、アクセスしたいデータベースのサイト名をクリックします。

3. [詳細] タブをクリックし、[データベース マネージャーの起動] ボタンを押します。

WPOven Dashboard Sites
データベースマネージャーを起動する

データベースを開いたら、次のステップは、レコードに変更がないか手動で検査することです。


注:不必要な変更を避けるために、Web ホストのサポート チームに相談することを強くお勧めします。


4. サーバー側のログを確認する

WPOven 上のすべてのサイトにはアクセス ログとエラー ログがあり、サイトの log/ フォルダーで入手できます。
ログ フォルダーにアクセスするには、サイトに関連付けられた SFTP アカウントを使用します。ログインすると、logs/ と public_html/ という 2 つのフォルダーが表示されます。

これらのログは、特にサーバー ログに予期しない変更が加えられた場合に、サーバー側で発生するすべてのアクティビティとイベントを追跡するのに役立ちます。 このような変更により、Web サイトに「405 メソッドは許可されていません」というメッセージが表示される可能性があります。

ログは、 logs/ フォルダー内にerror.logおよびaccess.logという名前で見つかります。

同じ SFTP アカウントを使用してそれらをローカル PC にダウンロードしてさらに確認し、そこで見つかった情報が異なるかどうかを確認できます。

5. Web サーバーの構成を検査する

「405 Method Not allowed」エラーを解決できない場合、次のステップは Web サーバーの構成ファイルを確認することです。 このエラーは通常、Web サーバーがユーザーの特定の URL へのアクセスを制限していることを示します。

したがって、リクエスト処理命令や意図しないリダイレクトがないか、Web サーバー構成を検査または確認する必要があります。

Web サーバーの構成を検査するには、最初のステップとして、Web サイトがどのサーバー ソフトウェアを使用しているかを確認します。 NGINX または Apache のいずれかになります。

Web サイトで Apache を使用している場合は、Web サイトのシステム ファイルのルート ディレクトリにある .htaccess ファイルを探してください。 ただし、Web サイトで NGINX Web サーバーを使用している場合は、代わりに nginx.conf ファイルを探す必要があります。

また、「WordPress .htaccess ファイル: 作成および編集する方法?」に関する専門記事もご覧ください。

.htaccess ファイルを見つけたら、テキスト エディターでファイルを開き、405 フラグを使用しているディレクティブを検索します。

Rewrite Rule
書き換えルール

それらを見つけた場合は、接頭辞「#」を使用して一時的にコメントしてみてください。 その後、Web サーバーを再起動して、変更によって問題が解決されたかどうかを確認します。

6. アプリケーションのコードとスクリプトを検査する

これまでのトラブルシューティング手順のいずれも問題を解決できなかった場合は、WordPress インストール内のカスタム コードに問題があることを示している可能性があります。 これが「405 Method Not allowed」エラーの原因であるかどうかを判断するには、検査が必要です。

このトラブルシューティング方法を実行する最良の方法の 1 つは、ステージング プラットフォーム上に Web サイトの完全なコピーを作成することから始めることです。 これにより、段階的なデバッグ プロセスを進めることができます。

ただし、このプロセスには近道はないことに注意することが重要です。 時間と労力が必要になります。 それでも、問題が発生した正確な瞬間を特定するのに役立つため、努力する価値はあります。

7.Aレコードを確認する

もう 1 つできることは、ドメイン ネーム サーバーのレコードを確認することです。 具体的には、A レコードをチェックして、すべての詳細が正確であることを確認します。

レコードは、ドメインまたはサブドメインを対応する IPv4 アドレスにマップします。 これは、基本的な DNS レコード タイプの 1 つであり、特定のドメインまたはサブドメインに対するリクエストを、関連する Web サイトまたはサーバーがホストされている正しい IP アドレスに送信するために使用されます。

A レコードに次の情報が含まれていることを確認してください。

  • タイプ: DNS レコード タイプは A に設定する必要があります。
  • 名前:ドメイン名またはサブドメイン名が別の IP アドレスを指している場合は、名前として「@」を使用します。
  • ポイント:ドメインまたはサブドメインが正しい IP アドレスを指していることを確認します。
  • Time to Live (TTL):これは、DNS リゾルバーがこのドメインのクエリをキャッシュに保存する期間を示します。 ほとんどのホスティングプロバイダーは通常、これを 14400 秒または 4 時間に設定します。

8. Web ホスティングプロバイダーに連絡します

上記の解決策を試しても「405 Method Not allowed」エラーが発生する場合は、より複雑な問題が発生していることを示しており、経験豊富な開発者の支援が必要になる可能性があります。

このような場合は、Web ホスティングプロバイダーに直接問い合わせることをお勧めします。 通常、ライブ チャットやチケット発行サービスを通じて 24 時間年中無休のカスタマー サポートを提供します。

多くの場合、ライブ チャットを選択するのが最も早く解決策を見つける方法ですが、電子メールや電話で問い合わせることもできます。


405 エラーを処理するためのベスト プラクティス

  • 適切な HTTP メソッドを使用する: HTTP プロトコルの仕様に従い、目的の操作に正しいメソッドを使用します。 各リソースでサポートされているメソッドに関してサーバーとクライアントが同期していることを確認してください。
  • 有益なエラー メッセージを提供する: 405 エラーが発生した場合は、問題を説明し、考えられる解決策を提案する、明確でわかりやすいエラー メッセージを提供します。 これは、ユーザーが問題を理解し、適切な措置を講じるのに役立ちます。
  • 適切なエラー処理とログを実装する: 405 エラーをキャプチャしてログに記録するための堅牢なエラー処理メカニズムをセットアップします。 効果的なエラーログは、問題の迅速な診断と解決に役立ち、システムの継続的な改善を可能にします。
  • 導入前に変更をテストおよび検証する: HTTP メソッドまたはサーバー構成に関連する変更を導入する前に、制御された環境で徹底的にテストしてください。 包括的なテストを実施して、変更が意図したとおりに機能し、新たな問題が発生しないことを確認します。 サンプル リクエストを使用して変更を検証し、サーバーが 405 エラーを生成せずに正しく応答することを確認します。

結論

すべての Web サイトは、どれほど適切に最適化されているとしても、エラー メッセージが表示される可能性があります。 訪問者のエンゲージメントを維持するには、この問題を期限までに解決することが非常に重要です。

最良の点は、混乱を引き起こす可能性があるにもかかわらず、「405 Method Not allowed」エラーは、これらの簡単な方法に従うことで簡単に修正できることです。

このエラーは、次の 8 つの最適なトラブルシューティング方法を使用するだけで修正できます。

  • 正しい URL を入力していることを確認してください
  • 最近の WordPress アップデートを元に戻す
  • データベースに変更がないか確認してください
  • サーバー側のログを確認する
  • Web サーバーの構成を検査する
  • アプリケーションのコードとスクリプトを検査する
  • Aレコードを確認する
  • Web ホスティングプロバイダーにお問い合わせください。

「405 Method Not allowed」エラーについて他にご質問はありますか? それとも、対処してほしい別の一般的なエラー メッセージはありますか? 以下のコメント欄でお気軽にお知らせください。


よくある質問

エラー 405 を修正するにはどうすればよいですか?

405 メソッドが許可されていないエラーを修正する 8 つの方法:
1. 正しい URL を入力していることを確認してください
2. 最近の WordPress アップデートを元に戻す
3. データベースに変更がないか確認します
4. サーバー側のログを確認する
5. Web サーバーの構成を検査する
6. アプリケーションのコードとスクリプトを検査する
7.Aレコードを確認する
8. Web ホスティングプロバイダーに連絡します

405エラーの原因は何ですか?

405 エラーの一般的な原因:
1. サポートされていない HTTP メソッド: URL に対して許可されていないメソッドが使用されています。
2. ヘッダーの欠落または不正確: ヘッダーのフォーマットが不適切または欠落しています。
3. サーバーの設定ミス: サーバーの設定が間違っています。
4. クロスオリジン リソース共有 (CORS) の問題: クロスオリジン リクエストの問題。

405 ログイン エラーとは何ですか?

405 ログイン エラーは、サポートされていない HTTP メソッドでログインしようとするなど、認証に使用されるメソッドが許可されていないことを示す HTTP ステータス コードです。 このエラーは通常、サーバーがログイン プロセスでサポートしていない HTTP メソッドをユーザーが使用しようとしたときに発生します。