こんにちは。
個人的にLaravelを使おうと思い立ち、いざlaravel10をインストールして使ってみたら、
今までwindowsのxamppを使用していたため、php artisan serveを毎回打つのが面倒。。。
MAMPを使えば良い話なのですが、せっかくですしMAMPなしで構築してみようと思い立ちました!
環境
- PHP8.2
- Laravel10
- apache2.4
環境はひとまずこんな感じです。
手順
まずはhomebrewを使ってphp@8.2とhttpdをインストールします。
PHP & Laravel
まずはインストール
brew install php@8.2
次はpathを通します
echo 'export PATH="/usr/local/opt/php@8.2/bin:$PATH"' >> ~/.bash_profile
terminalを再起動して以下コマンドを実行してバージョンが返ってきたらOK
php -v
# 結果
PHP 8.2.3 (cli) (built: Feb 15 2023 00:34:20) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.3, Copyright (c) Zend Technologies
with Zend OPcache v8.2.3, Copyright (c), by Zend Technologies
Laravel10をインストール
laravelプロジェクトを置いておきたい階層まで移動したら下記コマンドを実行
composer self-update
↓
composer create-project laravel/laravel "アプリ名" --prefer-dist
apache
httpdをインストール
brew install httpd
macは元からapacheが入っているのでそっちを停止
sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
設定ファイルを修正していきます。
vi /usr/local/etc/httpd/httpd.conf
vimエディタが開くので下記のmoduleのコメントアウトを消します
# コメントアウトしてある状態
#LoadModule userdir_module lib/httpd/modules/mod_userdir.so
#Include /usr/local/etc/httpd/extra/httpd-userdir.conf
#LoadModule rewrite_module modules/mod_rewrite.so
↓
LoadModule userdir_module lib/httpd/modules/mod_userdir.so
Include /usr/local/etc/httpd/extra/httpd-userdir.conf
LoadModule rewrite_module modules/mod_rewrite.so
PHPを使えるようにする
・LoadModuleが書いてあるところの最後に追記する形で以下を記載する
LoadModule php_module /usr/local/Cellar/php/8.2.3/lib/httpd/modules/libphp.so
# ↑brewでインストールしたphpまでのpath
<IfModule php_module>
AddType application/x-httpd-php .php
</IfModule>
その他の修正箇所
#ServerName www.example.com:8080
↓
ServerName localhost
#####################
DirectoryIndex index.html
↓
DirectoryIndex index.php index.html
#####################
DocumentRoot "/usr/local/var/www"
<Directory "/usr/local/var/www">
AllowOverride None
↓
DocumentRoot "Laravelプロジェクトまでのpath"
<Directory "Laravelプロジェクトまでのpath">
AllowOverride All
apacheを起動
brew services start httpd
http://localhost:8080/publicにアクセスして下記画像が表示されたらOK!!
右下を見てみるとちゃんとLaravel10になってますね!!よかった
振り返り
今までxamppでずっと開発してきて、apacheのことなんて全く気にしていなかったですが
今回それらを使わずに構築したことで、apache等のwebサーバーについて調べる良いきっかけになりました!
複数サーバーもvirtualhostを使えば立てれるようなので、そのあたりも深掘りして調べていきたいと思います!
以上、駄文ですが最後まで読んで頂きありがとうございました!
