Ubuntu16にPHPbrewを用いた開発環境の構築してみた
Vim使ってPHPでステップ実行したいいいいい(`;ω;´)
ふと、ある日そう思ったわけです。
そんなわけなのですが、今回のゴールはphpbrewで自在にphpのバージョンを変えることができるところまで頑張ってみようと思います。
環境
- Ubuntu 16.04
- phpbrew 1.22.6
手順
まずは必要なパッケージのインストールをします
sudo aptitude install apache2 apache2-dev php php-curl sudo service apache2 start
でlocalhost
にブラウザからアクセスして"Apache2 Ubuntu Default Page"というタイトルのページにつながればおっけーですb
次にphpbrewのインストールです(詳しくはhttps://github.com/phpbrew/phpbrew/blob/master/README.ja.mdを参照)
curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew chmod +x phpbrew sudo mv phpbrew /usr/local/bin/phpbrew phpbrew init
.bashrcか.zshrcあたりに以下の設定を追記した後、ターミナルを再起動か、設定ファイルを再読込させます。
[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc
Ubuntu仕様のApacheではモジュールのOn/Offをコマンドで行います。phpbrewでphpのインストールを行う際、/etc/apache2/mods-enabled
に指定の.confファイルがなければ設定の書き込みに失敗して正しくビルドされません(phpに関するenabledなモジュールが1つもインストールされてない場合は特に意識する必要はないと思われます(未確認))。自分のモジュールの状況を確認して各自以下のコマンドを実行してください。また、PHP5とPHP7のモジュールを同時にOnにしてしまうとコンフリクトして正しくapache2が起動されませんので注意してください
# PHP5系をインストールしたくて、現在enabledなモジュールがPHP7のとき a2dismod php7 a2enmod php5 # PHP7系をインストールしたくて、現在enabledなモジュールがPHP5のとき a2dismod php5 a2enmod php7
古いバージョンのphpが欲しい場合は--old
をつけます。また、インストール時にphp本体と一緒にapache2のモジュールもインストールされますのでエラーが出たら指示にしたがってアクセス権の変更などをおこなってください
phpbrew update phpbrew update --old phpbrew known --old phpbrew install 5.3.29 +default +apxs2 phpbrew switch 5.3.29
後々ステップ実行できるようにxdebugのインストールもしておきます。新しいバージョンのXDebugだと古いバージョンのPHP用にはコンパイルされていないことがあるそうなので、うまく行かない人はインストールするXDebugのバージョンを下げて試してみてください(参考URL: Failed to install xdebug · Issue #538 · phpbrew/phpbrew · GitHub)
phpbrew ext install xdebug # うまく行かない人はバージョンを調べて適当に古いバージョンをインストール phpbrew ext known xdebug phpbrew ext install xdebug 2.2.7
phpのバージョンを切り替えたあとは忘れずapache2を再起動しましょう
sudo service apache2 restart
ここまででPHPのバージョンを自在に切り替えることができるようになりました(できない人はコメントにて教えていただけると助かります!)
所感
PHP自体はすごく書きやすい言語だと思うけど、開発環境とかプロジェクトの管理とかでその人のセンスがもろに出そうな気がしました。何事もまずは整理整頓からですね!
それではみなさんよいPHPライフを!
参考にしたサイト様
http://qiita.com/keitaoouchi/items/f9f3287d7d5e82dd382aqiita.com