PhpStorm 2020.2 ヘルプ

デバッグエンジンの構成を検証する

PhpStorm は、Xdebug または Zend デバッガーの設定を検証して、一部の設定が欠落しているかどうか(たとえば、xdebug.remote_enable)、または他の設定と矛盾しているかどうかを伝えます。PHP インタープリターをプロジェクト用に設定すると、PhpStorm はローカル PHP 開発環境にデバッガーがインストールされているかどうかを知らせ、使用されている Xdebug または Zend デバッガーのバージョンを報告します。詳細は、デバッグエンジンを構成するローカル PHP インタープリターを構成する、およびリモート PHP インタープリターの構成を参照してください。

また、ローカルまたはリモート Web サーバーでデバッグエンジンに関する詳細情報を取得することもできます。

  1. メインメニューから実行 | Web サーバーのデバッグ検証を選択します。

  2. 開いたリモート環境の検証ダイアログで、デバッガーを検証する Web サーバーを選択します。

    • ローカル Web サーバーに関連付けられたデバッガーをチェックするには、ローカル Web サーバーまたは共有フォルダーを選択します。
      • 検証スクリプトを作成するパス : このフィールドでは、検証スクリプトが作成されるサーバードキュメントルートのフォルダーへの絶対パスを指定します。タイプ所定の位置にの Web サーバーの場合、フォルダーはプロジェクトルートにあります。

        フォルダーは http を介してアクセスできる必要があります。

      • 検証スクリプトへの URL : このフィールドに、検証スクリプトが作成されるフォルダーの URL アドレスを入力します。プロジェクトルートが http を介してアクセス可能なフォルダーにマップされている場合、プロジェクトルートまたはそにある他のフォルダーを指定できます。

    • リモートサーバーに関連付けられているデバッガーをチェックするには、リモート Web サーバーを選択します。
      • 検証スクリプトを作成するパス : このフィールドでは、検証スクリプトが作成されるサーバードキュメントルートのフォルダーへの絶対パスを指定します。フォルダーは http を介してアクセスできる必要があります。

      • デプロイサーバー : このフィールドに、ターゲット環境にアクセスするためのタイプローカルサーバーまたはリモートサーバーのサーバーアクセス構成を指定します。詳しくは Web サーバーとの同期を構成するを参照してください。

        リストから構成を選択するか、デプロイダイアログ参照 the Browse button をクリックします。

  3. 検証をクリックして、PhpStorm で検証スクリプトを作成し、ターゲットリモート環境にデプロイして実行します。

検証結果のトラブルシューティング

接続が拒否されました

Web サーバーに接続する際に問題が発生しました。URL(およびポート)が正しいことを確認してください。これらは、URL への検証スクリプトオプションまたはデプロイのいずれかで Web サーバーに提供されます。

検証スクリプトへの Web パスが正しく設定されていることを確認してください ...

ローカルプロジェクト内の検証スクリプトを作成するパスは、検証スクリプトへの URL またはデプロイの URL オプションにマップされません。フレームワークまたは PHP ビルトイン Web サーバーを使用している場合は、そのディレクトリに実際のファイルを送信する代わりに、フレームワークが 404 応答を送信している可能性があります。

これをテストする簡単な方法は、検証スクリプトを作成するパスとして設定したディレクトリに test.php ファイルを作成し、そのファイルが URL から検証スクリプトまたは test.php が追加されたデプロイ url から呼び出し可能であることを確認することです。

例:検証スクリプトを作成するパス/var/www/public に設定されている場合、そのフォルダーに次の内容の test.php ファイルを作成します。

<?php echo 'test works';

検証スクリプトへの URL またはデプロイの URL が http://192.168.100.100:8080 の場合、http://192.168.100.100:8080/test.php にアクセスして "test works" の出力を確認することにより、そのスクリプトを呼び出すことができるはずです。フレームワークによって生成された 404 が表示される場合は、URL 書き換えが正しく設定されていません。フレームワークのドキュメントを参照して、他のリクエストをフレームワークディスパッチャーに送信する前に、URL 書き換え設定が実際のファイルを返すことを確認してください。

404 が表示されていて、PHP ビルトイン Web サーバーを使用している場合、ファイルシステムにファイルが存在する場合、ファイルを提供するようにこの Web サーバーを構成できないことが原因である可能性があります。ファイルシステムファイルが存在する場合、送信するには、すべてのリクエストを送信するファイル(通常は index.php)に次のコードを追加する必要があります。

if (PHP_SAPI == 'cli-server') { // To help the built-in PHP dev server, check if the request was actually for // something which should probably be served as a static file $file = __DIR__ . $_SERVER['REQUEST_URI']; if (is_file($file)) { return false; } }

サーバーホストはおそらくローカルではないにもかかわらず、リモートホストは 'localhost' として設定されています

検証スクリプトへの URL には localhost とは異なるものが含まれていますが、xdebug.remote_host 値が設定されていないため、localhost のデフォルト値を使用しているか、または localhost または 127.0.0.1 に設定されています。

次の原因により、指定された URL に到達できません : 「リクエストはステータスコード 404 で失敗しました」

この課題は、サーバーのドキュメントルートがプロジェクトのルートと異なり、デプロイパスマッピングが対応して構成されていない場合に発生する可能性があります。

次の例を考えてみましょう。

  • プロジェクトは /MyProject フォルダーに保存されます。

  • サーバーのドキュメントルートは、そのパブリックサブフォルダー、つまり /MyProject/public に設定されます。

  • アプリケーションにアクセスするための URL は http://MyApp.test です。

プロジェクトルートフォルダー全体がサーバードキュメントルートにマップされている場合、PhpStorm は http://MyApp.test/public/_intellij_phpdebug_validator.php URL を介して検証スクリプトにアクセスしようとし、その結果、404 エラーが発生します。これを解決するには、パブリックサブフォルダーとサーバードキュメントルート間の明示的なマッピングを設定する必要があります。

  1. 設定 / 環境設定ダイアログ Ctrl+Alt+S で、ビルド、実行、デプロイ | デプロイに移動します。

  2. デプロイサーバーを選択し、マッピングタブで新しいマッピングを追加ボタンをクリックします。

  3. /MyProject/public フォルダーをサーバードキュメントルート / にマップする追加のエントリを追加します。

    Deployment Mappings for Debugger Validation

その結果、検証スクリプトにアクセスするための URL は正しい http://MyApp.test/_intellij_phpdebug_validator.php になります。

最終更新日 :

関連ページ:

デバッグエンジンを構成する

PhpStorm は、PHP アプリケーション、クラス、およびファイルのデバッグをサポートしています。デバッグ機能は PhpStorm に組み込まれており、設定を構成するだけで済みます。PhpStorm では、JavaScript デバッガーはそのまま使用でき、ほとんどの場合、デフォルトの設定で十分...

リモート PHP インタープリターの構成

リモート PHP インタープリターという用語は、リモートホストまたは仮想環境にインストールされた PHP エンジンを意味します。リモート PHP インタープリターという用語は、コンピューターにインストールされているローカル PHP インタープリターの反対語として使用されます。ローカル PHP イ...

ビルトイン Web サーバー

PhpStorm はあなたのアプリケーションをプレビューしデバッグするために使用できる内蔵 Web サーバーを持っています。このサーバーは常に稼働しており、手動構成は不要です。すべてのプロジェクトファイルは、プロジェクト構造に関して、ルート URLhttp://localhost:< 組み込み...

Zend デバッガーの構成

Zend デバッガーをダウンロードしてインストールするお使いのオペレーティングシステムに対応したZend デバッガーパッケージをダウンロードしてください。PHP のバージョンに対応するディレクトリ(ZendDebugger.soなど)でZendDebugger.dll(UNIX)またはphp-7...

ブラウザーのデバッグ拡張機能

デバッグを開始するには、まずサーバー上でデバッガーエンジンをアクティブにする必要があります。これを行うには、特別なまたはパラメーターを設定する必要があります(詳細については、XdebugおよびZend デバッガーの公式ドキュメントを参照してください)。手動で行うこともできますが、ブラウザの拡張機能...