この記事は現役ウェブディベロッパーがわかりやすさにこだわって作成しました
はじめに
前回、Vagrantを使ってVirtualBoxにCENTOSのPHP開発環境を構築しました。さらにそこから一歩踏み込んでIDEツール(PHPSTORM)で仮想マシン内のWEBサーバーで動くphpプログラムをデバッグする環境を作ります。
【VAGRANT+VIRTUAL BOX】ローカル環境にLAMP環境を構築する
準備
- Vagrant+VirtualBox+LAMP環境
- PHPSTORM
リモートデバッグの仕組みを理解するにはこちらのサイトが参考になります!
WEBサーバー側の設定
サーバー側の設定はローカル側のデバッガツールと同期できるようにXDEBUGを導入します。 すでに構築済みのVitrualBoxのLAMP環境に接続します。 コマンドプロンプトを立ち上げてVagrantコマンドでSSH接続します。
準備
vagrant ssh
レポジトリの追加
EPELリポジトリ
yum install epel-release
または
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Remiリポジトリ
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
PHPのバージョンアップ
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9Q2VudE9TNiVFRiVCQyU4RkNlbnRPUzclRTMlODElQUJQSFA1LjYlRUYlQkMlOEZQSFA3JUUzJTgyJTkyeXVtJUUzJTgxJUE3JUUzJTgyJUE0JUUzJTgzJUIzJUUzJTgyJUI5JUUzJTgzJTg4JUUzJTgzJUJDJUUzJTgzJUFCJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02YWJjZGFhNmQxMjZiZDU1YjYzZmJmMGYzNzgxZDM5YQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwb3phd2FuJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzImdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1iZDNhZDI0YjFjNzkxNTY1NzUxNzIwNjJmYjY4MDc1YQ&blend-x=142&blend-y=491&blend-mode=normal&s=6759c9cd491b3d2e11706fe898a2084f)
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9Q2VudE9TNiVFRiVCQyU4RkNlbnRPUzclRTMlODElQUJQSFA1LjYlRUYlQkMlOEZQSFA3JUUzJTgyJTkyeXVtJUUzJTgxJUE3JUUzJTgyJUE0JUUzJTgzJUIzJUUzJTgyJUI5JUUzJTgzJTg4JUUzJTgzJUJDJUUzJTgzJUFCJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02YWJjZGFhNmQxMjZiZDU1YjYzZmJmMGYzNzgxZDM5YQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwb3phd2FuJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzImdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1iZDNhZDI0YjFjNzkxNTY1NzUxNzIwNjJmYjY4MDc1YQ&blend-x=142&blend-y=491&blend-mode=normal&s=6759c9cd491b3d2e11706fe898a2084f)
古いバージョンの削除
rpm -qa | grep php
既に古いバージョンがインストール済みの場合、削除しなくてもアップデートされるが、一応消しておく。
yum remove php-*
PHP5.6をインストール
yum install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt
pearをインストール
Xdebugを導入するにはpeclが必要です
sudo yum install php-pear
xdebugのインストール
xdebug ver2.5.5をインストールします。phpのバージョンが5.6以上で動作します
sudo pecl install -a xdebug
php.iniを編集
xdebugをPHPで認識できるようにします。
xdebugの設定を追加
zend_extension=xdebug.so xdebug.remote_enable=on xdebug.remote_autostart=on xdebug.remote_handler=dbgp ;VM の private_network が 192.168.33.xxx の場合の設定 xdebug.remote_host=192.168.33.1 xdebug.remote_port=9001 ;デフォルトの9000だとたまにエラーになる場合がある xdebug.idekey="phpstorm"
再起動&確認
php -i | grep xdebug
# xdebug support => enabled
systemctl restart httpd
参考
インターネット越しのクラウドサーバーをデバッグする方法が紹介されています
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgwJTkwUEhQJUUzJTgwJTkxJUUzJTgzJUFBJUUzJTgzJUEyJUUzJTgzJUJDJUUzJTgzJTg4JUUzJTgzJTlFJUUzJTgyJUI3JUUzJTgzJUIzJUUzJTgxJUFFJUUzJTgzJTg3JUUzJTgzJTkwJUUzJTgzJTgzJUUzJTgyJUIwJUUzJTgyJTkyJUUzJTgwJTgxJUUzJTgwJThDJUU4JUE0JTg3JUU2JTk1JUIwJUU0JUJBJUJBJUUzJTgxJUE3JUUzJTgwJThEJUUzJTgyJTg0JUUzJTgyJThCJUUzJTgwJTkwWGRlYnVnJUMzJTk3REJHcFByb3h5JUUzJTgwJTkxJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02YTBiZjhiMmUyYzI3NDU2Njk2YzYzZGI2ZDY2NWFiMQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwdGFrdWRvJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzImdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1iZTAyZGY5NTE2MGY3MjA2YWQ3YmEyOTFjYmIwOWUxNw&blend-x=142&blend-y=491&blend-mode=normal&s=6d4664d115412973d0d339254027324d)
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgwJTkwUEhQJUUzJTgwJTkxJUUzJTgzJUFBJUUzJTgzJUEyJUUzJTgzJUJDJUUzJTgzJTg4JUUzJTgzJTlFJUUzJTgyJUI3JUUzJTgzJUIzJUUzJTgxJUFFJUUzJTgzJTg3JUUzJTgzJTkwJUUzJTgzJTgzJUUzJTgyJUIwJUUzJTgyJTkyJUUzJTgwJTgxJUUzJTgwJThDJUU4JUE0JTg3JUU2JTk1JUIwJUU0JUJBJUJBJUUzJTgxJUE3JUUzJTgwJThEJUUzJTgyJTg0JUUzJTgyJThCJUUzJTgwJTkwWGRlYnVnJUMzJTk3REJHcFByb3h5JUUzJTgwJTkxJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02YTBiZjhiMmUyYzI3NDU2Njk2YzYzZGI2ZDY2NWFiMQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTcxNiZ0eHQ9JTQwdGFrdWRvJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzImdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1iZTAyZGY5NTE2MGY3MjA2YWQ3YmEyOTFjYmIwOWUxNw&blend-x=142&blend-y=491&blend-mode=normal&s=6d4664d115412973d0d339254027324d)
![](https://blogdeoshiete.com/wp-content/uploads/advertise.jpg)
この記事についてのご質問またはお困りのことがございましたら、お気軽にお問い合わせください。