web-dev-qa-db-ja.com

PHPStormまたはPOSTmanを使用したXDebugおよびRESTfulサーバー

XDebugで動作するRESTクライアント( PHPStorm または POSTman に組み込まれているクライアントなど)を取得するにはどうすればよいですか?

私の現在のXDebugのセットアップでは、PHPStormと Bookmarkletが提供されています を使用して、ChromeとFirefoxの両方で動作させることができます-しかし、POSTmanで試すとすぐにまたは他のRESTクライアント、それを開始する方法がわかりません。

乾杯。

69
Daniel Hollands

http://youtrack.jetbrains.com/issue/WI-17031 が実装されるまで、次のいずれかの方法を試すことができます。

  1. デバッグを試みるように(php.iniを編集して)xdebugを構成しますeveryphpスクリプト(xdebug.remote_autostart = 1

  2. Xdebugセッション開始パラメーターを実際のURL(XDEBUG_SESSION_START={{KEY}}- http://xdebug.org/docs/remote )に追加します。例:?XDEBUG_SESSION_START=PHPSTORM

  3. Xdebug cookieをヘッダーの1つとして渡します(たとえば、 bookmarklet またはブラウザー拡張機能によって設定されます)

これが機能するためには、事前に「電話ハンドル」アイコンがアクティブになっていることを確認してください(Run | Start Listen for PHP Debug Connection)。

169
LazyOne

これは私を夢中にさせました。 PHP 7.1に更新したところ、動作していたxdebugが機能しなくなりました。 xdebug.soファイル(Linux)を更新し、php --versionがxdebugが実際にロードされて動作していることを示しました。しかし、私がPostmanを使用する場合、デバッガーは起動しませんでした。

これが解決策です。サーバーとしてApacheを使用している場合は、PHP 7.1 modを有効にしてApacheを再起動する必要があります:Sudo service Apache2 restart

2
RyanNerd
xdebug.remote_timeout = 60000

私のために働いた。 Macが非常に遅く、200ミリ秒後にリモートデバッガーがタイムアウトしたため(デフォルト値)

1
Nikunj Acharya