0
Help us understand the problem. What are the problem?

posted at

updated at

mac XAMPP インストール

Mac Catalina に XAMPPをインストールする方法

Windowsでもポイントは同じ

ポイントは、インストール時のパッケージの選択とあとはバーチャルホスト vhostの設定

XAMPPのダウンロード

トップページからダウンロードすると意図しないXAMPPがダウンロードされるのでダウンロードページから

目的は、PHP7.3 をインストールしたいんだが、よく見ると2つある。

image.png

どこで確認するかというと、青い「ダウンロード」ボタンのリンクがどうなっているか。
image.png


image.png

2つある
違いは、vmかどうか。vmの意味は、Virtual Machineという意味。
vmを選ぶと、macの中に仮想環境を作ってそこでApacheやMySQLを起動させるということ。

VMということになると、PCの中にさらに別のネットワークが存在するということを忘れないように。

とはいえ、仮想環境を立ち上げてさらにWebサーバー立ち上げて、PCからVMにログインして作業とかなるとちょっと面倒。なので、vmではないのをインストールします。

ダウンロードインストールまでは、かんたんなので大丈夫。

では、もうひとつ。

Virtual Hostの設定(apache)

もう、最近のapacheは、バージョン2.4系しか無いと思うので、ぐぐってみるとまだ2.2系の書き方もでてくるのでそこだけ注意です。

XAMPPをインストールすると
/Application/XAMPP/etc/httpd.conf
ここにapacheの設定ファイルがあります。
ここでまずは、vhostの設定ファイルを読み込むようにします。
Include の前に#でコメントになっているので、取り除きます。

httpd.conf
# Virtual hosts
Include etc/extra/httpd-vhosts.conf

そして、そこに指定されている
etc/extra/httpd-vhosts.confを設定します。
いったんファイル内すべて消していいです。全部コメントになっているので。

Listenは、待受ポート番号 65535まで指定可能。だけど、基本的にいくつかは予約されていてすでに別のサービスで使われているので、8000以降とか10000以降とか指定すればまあ、空いてるので大丈夫。

sampleユーザさんとしてpublicが公開ディレクトリの場合はこう。
ちなみに、以前は10080ポートがいい感じだと思ってたけど、このポートは、Chromeだとブロックされることに!まあよくあるポート番号だからかな。

httpd-vhosts.conf
# sample
Listen 10001
<VirtualHost *:10001>
     DocumentRoot "/Users/sapmle/sampleproject/public"

     ServerName localhost
     <Directory "/Users/sapmle/sampleproject/public">
        AllowOverride All
        Options All
        Require all granted
    </Directory>
</VirtualHost>

httpd.conf を変更したら XAMPP再起動を忘れずに!! apacheの再起動が必要です

macでphp7.4の場合、403エラーがおきるようです

httpd.conf
User foo ←ローカルユーザ名にする
Group daemon
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?