次のシナリオでXDebugを使用しようとしています
Windowsホストから\\ guestIP\mysiteを指すNetbeansプロジェクトを作成しました。プロジェクトの実行構成には、次のものがあります。
高度な実行構成の場合:
UbuntuVMのphp.iniに次のものがあります
xdebug.remote_enable = on
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = /tmp
;xdebug.remote_Host=localhost,<HostIP>, mysite.local.fr
xdebug.remote_connect_back=1
xdebug.remote_handler=dbgp
xdebug.idekey="netbeans-xdebug"
xdebug.remote_mode=req
これはいずれも機能しません。NetbeansはWindowsからのブレークポイントで停止しません。
Netbeansを使用した私のVMからの直接デバッグは正常に機能します。
誰かが私のデバッガーをWindowsからリモートで動作させる方法を教えてもらえますか?ありがとう
申し訳ありませんが、もうコメントできません。 @David @ JamesB41:私もこれを探していました。私のセットアップは、NetBeans7.1を搭載したWindows7ホストであり、VirtualBoxにUbuntu VM)があります。NetBeansプロジェクトをリモートプロジェクトとしてセットアップし、SFTPを使用してアップロードおよびダウンロードします。
次の設定は私にとってはうまくいきます。ホストのIPをremote_Hostとして使用し、VMがそれを認識できることを確認してください。
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_Host=10.217.165.193
xdebug.remote_port=9000
xdebug.remote_log="/tmp/log/xdebug.log"
NetBeansはエントリポイントブレークポイントで停止します(PHP->デバッグでオプションが設定されている場合)。 ただし、VMのファイルから実行されるため、NetBeansによって作成されたブレークポイントで停止することはありません。ただし、xdebug_break()を使用すると、スタックと変数が表示されます。 プロジェクト設定>設定の実行>詳細設定でフォルダを正しくマップすると、NetBeansブレークポイントで停止し、強調表示されます。驚くばかり。私は完全です。
(connect_back
configは役に立たなかったようです。おそらく、$ _ SERVER ['REMOTE_ADDR']が設定されていないためです。)
NetBeansを使用したリモートデバッグについては、以下のドキュメントを参照してください。非常に役立ちます。 http://stuporglue.org/setting-up-xdebug-with-netbeans-on-windows-with-a-remote-Apache-server/
これは古いことですが、良い思い出になります。 virtualboxでnatを使用している場合は、xdebugポートのポート転送をローカルマシン(通常はデフォルトで9000)に戻すように設定していることを確認してください。
すべてが正しいように見えても、netbeans内から「WaitingFor Connection」が表示される場合は、php.ini設定で試してみてください。
xdebug.remote_connect_back=on
任意のIPからの接続を許可するか、問題に関する詳細情報を確認してください http://www.devside.net/wamp-server/netbeans-waiting-for-connection-netbeans-xdebug-issue ==
別のオプションは、VMが独自のlocalhost:9000(xdebugのデフォルト)と通信するように構成してから、ホストからVM)にSSHで接続し、そのポートのポートトンネルをホストマシンに戻します。その後、ホストマシンデバッガーはlocalhost:9000に接続するだけで、すべてが同じマシンで実行されているかのように正確に機能するはずです。
私は次の設定を持っています、そしてそれは働きます。
ホストPC(クライアント)
** OPの質問でWindowsについて言及していることは承知していますが、これを解決するためのメインセットアップはVMで行う必要があることに関して、とにかく誰かに役立つことを願っています。
ゲストPC(サーバー)/仮想マシン
「ゲストPC(サーバー)/仮想マシン」で次の手順を実行する必要があります
Sudo apt-get install php5-xdebug
/etc/php5/Apache2/php.ini
、[Date]
の直前にこれらの行を追加し、xdebug.remote_Host
を変更して「ホストPC(クライアント)」IPを反映します。
[debug]
; Remote settings
xdebug.remote_autostart=off
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_Host=192.168.0.2
xdebug.remote_port=9000
Sudo service Apache2 restart
参照
XDebugの構成方法-リモートデバッグ http://wiki.netbeans.org/HowToConfigureXDebug#Remote_Debuging
リモートマシンでプロパティxdebug_remote.Hostを正しく構成する必要があります。ローカルマシンのIPアドレスは、このプロパティで定義する必要があります。たとえば、192.168.0.2にインストールされているNetbeansを使用して、リモートマシン192.168.0.1でソースコードをデバッグするとします。 192.168.0.1のxdebug.remote_Hostをxdebug.remote_Host = 192.168.0.2に変更する必要があります。動作しない場合は、xdebug.remote_portで構成されているポートが両方のマシンで開いていることを確認してください。