MacBook Air (13-inch, Early 2014)のSSDを128GBから500GBに交換しました。
標準ソケットのSSDは異常に高いのでm.2変換アダプターを噛ましてます。
変換アダプターはsintechのST-NGFF2013-Cを個人輸入。
>>>NGFF M.2 PCIe SSD Card as 2013 2014 2015 MacBook SSD
ちなみにこのアダプターを使うと標準のネジでは長さが足らない。別途少し長めのT5ネジを用意しておく必要がある。
今回はロジックボードが死んだMac Miniから取り外した。
Time Machineは使わずmacOS Mojaveのクリーンインストールを行い、5年ぶりにまっさらなMacBooK Airとなりました。
すこぶる調子が良い。
ただ下記の記事で設定していた「ローカルのphpMyAdminからリモートサーバのMySQLへの接続」に激ハマり。
>>>Kusanagi環境のMySQLにMacのphpMyAdminからリモート接続する
完全には解決はしてないのですが、とりあえず使えるようになったので、その方法と試行錯誤の記録を残す。
もくじ
phpMyAdminを手動インストール
通常はパッケージ管理を簡単にするためHomebrewなどを使ってインストールするが、どうしてもうまく動かなかったので手動でインストールする。
なおphpMyAdminはApacheの公開ディレクトリに置くだけで使うことができる。
>>>phpMyAdmin公式ページ – ダウンロード
いまのところ最新は4.8.4だったのでダウンロード→解凍する。
「phpMyAdmin-4.8.4-all-languages」 → 「phpmyadmin」
macOS Mojave標準のapachの公開ディレクトリは「/Library/WebServer/Documents/」
ここに先程のphpmyadminフォルダをコピーする。
ブラウザを開いて「http://localhost/phpmyadmin/」にアクセスすればOK。
なおユーザーディレクトリ有効にした場合は任意のディレクトリにコピーすればOK。
HomebrewでphpMyAdminをインストール
HomebrewはMacOS用のパッケージ管理システム。パッケージやライブラリの依存関係を管理してくれる。
phpMyAdminもHomebrewでインストールできる。
しかし新規インストールしたMojaveでは動作しなかった。
>>>Homebrew – macOS 用パッケージマネージャー
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install phpmyadmin
インストールに下記のコメントが表示されるので指示に従う。
To enable phpMyAdmin in Apache, add the following to httpd.conf and
restart Apache:
Alias /phpmyadmin /usr/local/share/phpmyadmin
<Directory /usr/local/share/phpmyadmin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
Then open http://localhost/phpmyadmin
The configuration file is /usr/local/etc/phpmyadmin.config.inc.phpho
HomebrewでインストールされたphpMyAdiminは「/usr/local/share/phpmyadmin」にインストールされる。
「/usr/local/share/phpmyadmin」はシンボリックリンクで実体は「/usr/local/Cellar/phpmyadmin/4.8.4/share/phpmyadmin」
httpd.confに「http://localhost/phpmyadmin/」にアクセスしたとき「/usr/local/share/phpmyadmin」にリダイレクトするようエイリアスを設定する。
httpd.confファイルは「/etc/apache2/httpd.conf」
ここに先程の書きを追記する。
Alias /phpmyadmin /usr/local/share/phpmyadmin
<Directory /usr/local/share/phpmyadmin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
通常はこれだけで動くはずだが「http://localhost/phpmyadmin/」にアクセスしても真っ白な画面が出るだけ。
ここから先は試行錯誤した記録。
デフォルトではapacheのphpが無効になっているので有効化する。
/etc/apache2/httpd.conf:
LoadModule php7_module libexec/apache2/libphp7.so
AddTypeディレクティブの指定は不要なはず。
httpd.confでは「Include /private/etc/apache2/other/*.conf」となっており、/private/etc/apache2/other/php7.confで下記のように追加されているため。
<IfModule php7_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
同じくDirectoryIndex ディレクティブもhttpd.confもdir_moduleが有効化されているため追記は不要。
なおAddType、DirectoryIndexをあえてhttpd.confに追記しても結果は変わらず。
apache標準の公開ディレクトリからユーザーローカルの公開ディレクトリに変更してみる。
下記4行のコメントアウトを外し有効化する。
/etc/apache2/httpd.conf:
LoadModule userdir_module libexec/apache2/mod_userdir.so
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
Include /private/etc/apache2/extra/httpd-userdir.conf
「/private/etc/apache2/extra/httpd-userdir.conf」の下記コメントを外す。
Include /private/etc/apache2/users/*.conf
「/private/etc/apache2/users/」に個人用設定ファイルを作る。たとえばユーザーが「hogehoge」であれば下記ファイルを作る。
/private/etc/apache2/users/hogehoge.conf:
DocumentRoot "/Users/{ユーザー名}/Sites/"
<Directory "/Users/{ユーザー名}/Sites/">
AllowOverride All
Options Indexes FollowSymLinks Multiviews
Require all granted
</Directory>
まとめ
HomebrewからのインストールではphpMyAdminが動かない。
phpMyAdmin/index.phpにecho ‘TEST’;などと書けば表示されるのでエイリスは生きているようだが。。。
とりあえず手動インストールで動いているのでまた時間があるときに調査しよう。。。
関連記事