AzureのAppServiceにPHPのXDebugをインストールする
1. App Serviceの作成
ランタイムスタックを PHP
にして App Service
を作成する。
図 1. AppServiceの作成
PHP 7.4 では下記のエラーでインストール出来ませんでした |
2. XDebugのインストール
SSHコンソールを開く
図 2. SSH
インストール
# pecl install xdebug Cannot load Zend OPcache - it was already loaded downloading xdebug-3.0.0.tgz ... Starting to download xdebug-3.0.0.tgz (190,176 bytes) .........................................done: 190,176 bytes 86 source files, building running: phpize Configuring for: PHP Api Version: 20180731 Zend Module Api No: 20180731 Zend Extension Api No: 320180731 building in /tmp/pear/temp/pear-build-rootxp9Zj9/xdebug-3.0.0 : : : Build process completed successfully Installing '/usr/local/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so' install ok: channel://pecl.php.net/xdebug-3.0.0 configuration option "php_ini" is not set to php.ini location You should add "zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so" to php.ini
.so
ファイルを置くディレクトリを作り、ビルドされた redis.so
をコピーする。
/home 配下に作成すること
|
# mkdir /home/site/ext # cp /usr/local/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so /home/site/ext/ # ls -al /home/site/ext/ total 2080 drwxrwxrwx 2 nobody nogroup 0 Nov 27 21:06 . drwxrwxrwx 2 nobody nogroup 0 Nov 27 21:06 .. -rwxrwxrwx 1 nobody nogroup 2127368 Nov 27 21:06 xdebug.so
ini
ファイルを置くディレクトリを作る。
こちらも /home 配下に作成すること
|
# mkdir /home/site/ini
extensions.ini
ファイルを作成して、zend_extension=/home/site/ext/xdebug.so
を書き込む。
# touch /home/site/ini/extensions.ini # echo 'zend_extension=/home/site/ext/xdebug.so' >> /home/site/ini/extensions.ini
3. AppServiceの設定
[構成]メニューのアプリケーション設定にある「新しいアプリケションを選択」を選ぶ。
図 3. アプリケーション設定
-
名前 :
PHP_INI_SCAN_DIR
-
値 :
/usr/local/etc/php/conf.d:/home/site/ini
として追加する。
図 4. PHP_INI_SCAN_DIR設定
変更を保存する。
図 5. 保存
App Service
が再起動して反映される。
# php -i|grep xdebug Cannot load Zend OPcache - it was already loaded xdebug Support Xdebug on Patreon, GitHub, or as a business: https://xdebug.org/support xdebug.auto_trace => This setting has been changed, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#changed-"xdebug.auto_trace" => This setting has been changed, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#changed-"xdebug.auto_trace" xdebug.cli_color => 0 => 0 xdebug.client_discovery_header => no value => no value xdebug.client_host => localhost => localhost xdebug.client_port => 9003 => 9003 xdebug.cloud_id => no value => no value xdebug.collect_assignments => Off => Off xdebug.collect_includes => This setting has been removed, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#removed-"xdebug.collect_includes" => This setting has been r emoved, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#removed-"xdebug.collect_includes" : : :
4. PHP7.4でのエラー
ランタイムスタックをphp7.4にした時に pecl install xdebug
で出たエラー
creating libtool appending configuration tag "CXX" to libtool configure: patching config.h.in configure: creating ./config.status config.status: creating config.h running: make Makefile:228: warning: overriding recipe for target 'test' Makefile:132: warning: ignoring old recipe for target 'test' /bin/bash /tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/libtool --mode=compile cc -I. -I/tmp/pear/temp/xdebug -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/ include -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/main -I/tmp/pear/temp/xdebug -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/lo cal/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -I/tmp/pear/temp/xdebug/src -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/src -DHAVE_CON FIG_H -g -O2 -c /tmp/pear/temp/xdebug/xdebug.c -o xdebug.lo cc -I. -I/tmp/pear/temp/xdebug -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/include -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/main -I/tmp/pear/temp/xd ebug -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/ lib -I/tmp/pear/temp/xdebug/src -I/tmp/pear/temp/pear-build-rootH5iTFx/xdebug-3.0.0/src -DHAVE_CONFIG_H -g -O2 -c /tmp/pear/temp/xdebug/xdebug.c -fPIC -DPIC -o .libs/xdebug.o /tmp/pear/temp/xdebug/xdebug.c:22:10: fatal error: config.h: No such file or directory #include "config.h" ^~~~~~~~~~ compilation terminated. make: *** [Makefile:232: xdebug.lo] Error 1 ERROR: `make' failed