※久しぶりに書いてます。愚痴が多いです。
Laravel環境を手持ちのMacに構築し、どこかでGitHubなどに移行して、レンタルサーバーなどにデプロイしてみたいと思った。
主にこちらの記事を参照。
https://grune.co.jp/blog/laravel-create-local-environment/
phpのインストールまでは順調。
php@8.0はインストールできたが、pathが通らない。
zsh: command not found: php
プロファイルに書き出すコマンドみたいのも、インストール終了後に出ていた。
これは「keg」(樽)なんです。
だから、シンボリック・リンクを貼らないんです。
みたいな説明が書いてあったが、意味がわからない。
eval expoert source何ちゃらというおまじないが出てきた。
それを入れたのにできなかった。
そこでGoogleで検索すると、こちらの記事がヒット
https://qiita.com/miya1221/items/cf425340baf577b246f9
brew --prefix php@8.0
出力:
/opt/homebrew/opt/php@8.0
jun@mac-mini ~ % cat ~/.zshrc
export PATH="/opt/homebrew/opt/php@8.0/bin:$PATH"
export PATH="/opt/homebrew/opt/php@8.0/sbin:$PATH"
export PATH="/opt/homebrew/opt/php@8.0/bin:$PATH"
export PATH="/opt/homebrew/opt/php@8.0/sbin:$PATH"
なんか、コマンドを2回打ったのか、行がダブってる。
export PATH="/opt/homebrew/opt/php@8.0/bin:$PATH"
上記を追加して、source。
jun@mac-mini ~ % php -v
PHP 8.0.22 (cli) (built: Aug 4 2022 10:20:33) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.22, Copyright (c) Zend Technologies
with Zend OPcache v8.0.22, Copyright (c), by Zend Technologies
できた。ほっ。
続いてComposerに取り掛かる。
以前にも、Composerがない環境、かつ、パッケージ管理システムにもない環境で、ソースからインストールしたことはあった。
curlっつー便利なもんがあるのか!とその時思いつつ、なんで、Composerとかそんなに色んなもんを使うのかなーとも思った。
今回は、brewにあった。macports上にはComposerがないらしい。
macportsの方が使い慣れていたのだが、今は気力がなくなって、ネット上に情報が多いbrewを使ってしまう。
そもそも、今回CakePHPじゃなくってLaravelにしたものそんな理由。
どちらがいいとかは、私には分からない。
問題なくインストールできた。次はLaravel。
と、ここで気づいたのだが、httpdはインストールしなくて良いのだろうか。
確か、Laravelのフレームワークにテスト用のサーバがあったような。
待てよ、DBとの接続も必要だから、DBも入れないといけないのか。
うーん、そういえば、mariaDBがMySQLから派生して、どうのこうの。
どうなったんだろう。
徐々に違いは出てきているようだが、今回は要件も特にないし、MySQLにした。
ほい。
brew install mysql
なんかできたみたいだが、再起動にいちいち、homebrewのパスを指定しなきゃなんない。
まあportsでも、/opt/usrとかやってたから、いいか。
ほい。
composer create-project laravel/laravel laravel9byexample
バージョンを省略すると、最新版の9になるのかな。
1回目、なぜかソケットエラーになった。もう1回打ったらできた。
なぜ?不安。
jun@mac-mini ~ % php artisan --version
Could not open input file: artisan
がーん。またパスかなぁ。
あ、実行場所が問題なのね。
cd larabel9byexample(←さっき作った)
ほい。
jun@mac-mini laravel9byexample % php artisan --version
Laravel Framework 9.26.1
jun@junnoMac-mini laravel9byexample % php artisan serve
INFO Server running on [http://127.0.0.1:8000].
Press Ctrl+C to stop the server
2022-08-30 16:58:12 ................................................... ~ 0s
2022-08-30 16:58:12 /favicon.ico ...................................... ~ 0s
おお、きたきた。
ん?httpdもDBも関係なかったような。
Laravelの学習だけなら、phpだけでいいんですかね。
ただ、まともなアプリを作るならhttpdやDBの設定が必要だから、これからちまちまやっていく。
で、何を作りましょうかねえ。