Docker への切り替えを推奨

macOS のローカル開発で、ついに Docker を使うように切り替えました。 以下のチュートリアルは macOS の Catalina で動作しますが、制限があります。 Docker を使用して macOS に Apache、MySQL、および PHP をインストールする私の最新のチュートリアルに従うことをお勧めします。

注: この投稿は新規インストール用です。 Mac OS Mojave 用に Apache、PHP、および MySQL をインストールしている場合は、私の投稿「Updating Apache, PHP, and MySQL for macOS Catalina」をお読みください。

MAMP に代表される macOS で利用できる Web サーバー ソフトウェアや、brew などのパッケージ マネージャーについて承知しています。 これらはすぐに使い始めることができます。 しかし、これらは学習経験を放棄しており、ほとんどの開発者が報告しているように、管理が難しくなる可能性があります。 ほとんどの UNIX ソフトウェアは、macOS 上で簡単にインストールできます。 さらに、Apache と PHP は macOS にプリインストールされています。

コマンドの実行

まず、ターミナル アプリケーションを開き、root ユーザーに切り替えて、権限の問題なしにこの投稿のコマンドを実行できるようにします。 http://localhost

Enable PHP for Apache

最初に、デフォルトの Apache 設定のバックアップを作成します。 これは良い習慣であり、将来のバージョンの macOS に対する比較として役立ちます。 vi に慣れていない場合は、自由に別のエディタを使用してください。

vi httpd.conf

次の行をアンコメントします (# を削除):

LoadModule php7_module libexec/apache2/libphp7.so

Restart Apache:

apachectl restart

あなたの DocumentRootphpinfo() ページを作成すれば PHP が有効になっているかを確認できます。

macOS Catalina のデフォルト DocumentRoot/Library/WebServer/Documents.です。

grep DocumentRoot httpd.conf

次に、DocumentRootphpinfo()ページを作成します:

echo '<?php phpinfo();' > /Library/WebServer/Documents/phpinfo.php

http://localhost/phpinfo.phpにアクセスしてPHPを確認します

MacOS CatalinaにMySQLをインストールします

MacOS 用の最新の MySQL 一般利用者リリース DMG をダウンロードおよびインストールします。 MySQL 8 が最新バージョンです。 しかし、古いアプリケーションをサポートする必要がある場合は、古いバージョンも利用可能です。

インストールが完了すると、一時的なパスワードが提供されます。 インストーラを閉じる前に、このパスワードをコピーしてください。

READMEでは、mysqlmysqladmin のエイリアスを作成することを提案しています。 しかし、mysqldump のような役に立つコマンドは他にもあります。

export PATH=/usr/local/mysql/bin:$PATH

注意: パスを更新するために、新しいターミナルウィンドウを開くか、上記のコマンドを実行する必要があります。

最後に、mysql_secure_installation を実行する必要があります。 これは必要ではありませんが、データベースを保護するために良い習慣です。

Connect PHP and MySQL

PHP と MySQL が互いに通信できることを確認する必要があります。 これを行うには、いくつかのオプションがあります。 私は、多くの設定を変更する必要がない次の方法が好きです:

mkdir /var/mysqlln -s /tmp/mysql.sock /var/mysql/mysql.sock

Additional Configuration (optional)

macOS 上の Apache 2.4 のデフォルト設定は、かなり無駄がないと思われました。 たとえば、mod_rewrite のような一般的なモジュールは無効になっていました。

I edited my Apache Configuration:

vi /etc/apache2/httpd.conf

I uncommented the following lines (remove #):

LoadModule deflate_module libexec/apache2/mod_deflate.soLoadModule expires_module libexec/apache2/mod_expires.soLoadModule rewrite_module libexec/apache2/mod_rewrite.so

I develop multiple projects and would like each have a unique url, you can configure Apache VirtualHosts for macOS.もし、あなたが、複数のプロジェクトを開発して、それぞれにユニークな URL を持たせたいなら、macOS 用の Apache VirtualHost を構成することができます。

PHPMyAdmin をインストールしたい場合は、macOS に Apache、PHP、および MySQL をインストールするための私のオリジナルの投稿に戻りましょう。 Twitter で会話を続けましょう。

コメントを残す

メールアドレスが公開されることはありません。