注意:DockerやVagrantが動く環境でしたらそれらを利用されることを強くお勧めします。
なんでここまでこだわったかって、Dockerの動かない非力なマシンを使っていた為です。
はじめに
Swift作業が一段落着き、改めて私のホームグラウンドはLAMPだwと認識w
ReactNativeはいいんだいw
次のこととか考えて、CodeIgniterでのフルスクラッチのみならず色々手を広げてみようとローカル環境を作り直しました。
そしたらかつて作っていた筈なのに変な手間が掛かったので記録。
Macに環境作ってんだから厳密にはLinux-Apache-MySQL-PHPじゃないじゃんというツッコミは聞かないことにする。
なお完成品の各バージョンは以下の通り。
- MacBook Air Late 2010 + macOS High Sierra
- Apache/2.4.33
- Mysql 8.0.17
- PHP 7.3.9
OS
ほんとはOSから再現しようとVirtualBox使おうと思ったんだけど当面は var/www/html で稼働させることに拘りは無いので今回は見送り。
Apache
Mac標準装備のものを使うことにした。
そしたら、入っていたApacheが古かったのか変なハマり方をした。orz
DocumentRoot "/Library/WebServer/Documents"
って何ですの(´・ω・`)
https://weblabo.oscasierra.net/apache-macos-install-homebrew/
この辺を参考に
$ brew install httpd
でインストール。
DocumentRoot "/usr/local/var/www"
そうそうこれがやりたかったのよ。
Mysql
MariaDBにする勇気はなかったw
入っていたんだけれど…
テーブル構築した形跡があったんだけど…!
ERROR! The server quit without updating PID file
…やっちまった!orz
パニクって、せめて現存している実ファイルは回避したうえインストールし直す道を選んだ…
$ brew install mysql
DDLだけでも何とかしようと血眼でググった結果、mysqlfrmというツールで.frmファイルからDDLを取得できることが判明!
https://downloads.mysql.com/archives/utilities/
いっつも開発するたびにDDLとかダンプ取り損ねる失態を犯す私がいちばん欲しかったツールです。公式さんありがとう。
PHP
MediaWikiをローカルに環境構築しようとして叱られた為バージョンアップ。
$ brew install php@7.1
最初7.1を入れたんだ。
そしたらMediaWikiはインストールできたんだけど、EC-Cubeのインストールでintl拡張がないとまた叱られた。orz
資料を読み漁ってインストールを繰り返すもintl拡張はインストールされないので、諦めてphpを7.3にしてみる。
$ brew install php@7.3
…php7.3がphpinfoに反映されない…(´・ω・`)
httpd.confが
LoadModule php7_module /usr/libexec/apache2/libphp7.so
となっていたので
LoadModule php7_module /usr/local/Cellar/php/7.3.9_1/lib/httpd/modules/libphp7.so
に修正…
散々怒られるも、何故かしばらくしたら復旧。
要因?知らんよ(´・ω・`)
完成
斯くして私のローカルにLAMP環境が出来上がり、カスタマイズ仕事を見据えて
- MediaWiki
- EC-Cube
- Drupal
- WordPress
これらをインストール+研究がてら構築中のSNSの動作を確認。
あと勉強がてらFuelPHPとCakePHP(今更)、CMSではJoomlaあたり入れておく。CMSの流行りがわからん…
さてさてPHP仕事にかかる!見てろ、レコンキスタの始まりだ!