私はSublime Text 3で動作するようにXdebugを設定しようとしていますが、Context、WatchまたはStackのタブに何も表示されません。ブレークポイントを設定し、デバッグ開始(ブラウザ起動)をクリックします。ブラウザはURLに?XDEBUG_SESSION_START=sublime.xdebug
を追加したindex.phpファイルを開きますが、ブレークポイントに達するとコードの実行は停止しません。Sublime3用のXdebug(PHP)path_mappingとphp.iniの設定
また、をindex.phpに追加してみましたが、何の効果もありません。
.sublime-project
ファイルでpath_mapping
と指定すると、最も可能性が高いソリューションと思われます。 documentationのように述べている:値としてキーやローカルパスなどのサーバーパスとパスのマッピングを設定するために必要なファイルの場所を解決するためのリモートデバッグ用
path_mapping
。
私は、アプリのファイルがC:\inetpub\wwwroot\
に保存されているWindows 10上でIISを使用していますし、ホームページのURLは、私は、このような.sublime-project
ファイルは次のようになりますよう、それぞれのサーバーのパスとローカルパスで、と仮定しているhttp://localhost/index.php
です:
{
"folders":
[
{
"path": "."
}
],
"settings": {
"xdebug": {
"url": "http://localhost/index.php",
"path_mapping" : {"C:\\inetpub\\wwwroot\\" : "http://localhost/index.php"}
}
}
}
これは間違いありませんか?そうであれば、私のphp.iniファイルは正しく設定されていますか?
[ExtensionList]
.
.
.
zend_extension = "C:\Program Files (x86)\PHP\php-5.6.30-nts-Win32-VC11-x86\ext\php_xdebug-2.5.1-5.6-vc11-nts.dll"
[XDEBUG]
xdebug.default_enable=1
xdebug.remote_autostart=0
xdebug.remote_connect_back=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
xdebug.remote_host=localhost
* "私はそれぞれサーバーパスとローカルパスと仮定しています" * NO - URLとは関係ありません。リモート**ファイルパス**がローカルのファイルパス**と一致しない場合は、パスマッピングを使用する必要があります。ローカルコンピュータのウェブサイトの 'index.php'は'/var/www/'にありますが、リモートでは'/var/www/html/site-name/'にあります。 xdebugログを収集して、何が起きているかを確認します。 – LazyOne
あなたのコメントの助けを借りて、今、@LazyOneの問題を解決してくれてありがとう。 – gbavba