こんにちわ、PHPエンジニアのエンジニア婦人(@naho_osada)です。
PHPエンジニアとして9年~の経験があります。
今回は無事にウェブサーバーとなったものに、Laravelをインストールしていきます。
仮想開発環境を構築シリーズ
1 Hyper-Vで仮想マシンを作ろう
2-0 事前準備をしよう
2-1 Apacheを入れよう
2-2 PHPを入れよう
2-3 MariaDBとphpMyAdminを入れよう
3 Laravelをインストールしよう
4 Xdebugを設定しよう
5 Eclipseでデバッグしよう
システム要件
仮想マシン
- CentOS 7
- メモリ 2GB
- HDD 50GB
- CPUコア 2
Laravel
- PHP >= 7.1.3
- OpenSSL PHP拡張
- PDO PHP拡張
- Mbstring PHP拡張
- Tokenizer PHP拡張
- XML PHP拡張
- Ctype PHP Extension
- JSON PHP Extension
Composerを入れる
導入したPHPのバージョンと一致するremiリポジトリを対象にインストールします。
sudo yum install --enablerepo=remi,remi-php74 composer
composer -v
この画面が出てくれば成功です。
composerって何?
Composerとは、PHPのパッケージ管理システムです。
PHP使うなら是非あったほうが便利なアイテムです。PHP7.4ではデフォルトで入っていると思います。
composerはrootで実行しないで
composerコマンドはrootユーザーでやると怒られます。これはいろいろできてしまうからやめてください、とのこと。
但し警告だけで実行はされます。
PHPのモジュールを確認する
Laravelの要件にある、PHPのモジュールが入っているか確認します。
php -m
モジュール一覧が出てきます。不足がある場合は追加でインストールしていきます。
Laravelをインストールする
ここからLaravelインストールを参考にして実行していきます。
composer global require laravel/installer
インストール完了後、laravel –versionでバージョンの確認ができますが、恐らくパスが通らないためにエラーになると思います。laravelで諸々実行できるようにするためにパスを通しておきます。
Laravelインストールの初めに
Changed current directory to /home/ユーザー名/.config/composer
と出てくるので、その場所にパスを指定すればOKです。公式では「$HOME/.config/composer/vendor/bin」または「$HOME/.composer/vendor/bin」とあります。
export PATH=$HOME/.config/composer/vendor/bin:$PATH
設定後、laravel –versionの動作が確認できます。
次に、プロジェクトを作成します。Laravelを動かしたいところに移動し、そこでコマンドを実行して作成します。ここでは開発用なので/var/www/htmlの公開領域へ作成します。
cd /var/www/html
laravel new project-name
project-nameは任意の名称を付けてください。フォルダ名になります。
これで、「/var/www/html/project-name」ができました。この中に移動してLaravelのバージョンを確認します。インストール時の最新バージョンが入ります。
php artisan --version
Laravel Framework 7.17.2
最後にstorageとcacheのパーミッションを変更して、準備完了です。
cd /var/www/html/project-name
chmod -R 777 storage
chmod -R 777 bootstrap/cache
Laravelを起動する
インストールしたLaravelを起動してみます。
置いてあるだけでは実行されないので、コマンドからLaravelを起動します。
cd /var/www/html/project-name
php artisan serve
表示の確認(仮想マシンから)
無事に起動したら、仮想マシン内から表示できるか確認してみます。
通常、Laravelはポート8000番で起動するようです。localhostだけだとApacheの方を表示します。http://localhost:8000にアクセスします。
表示されたら成功です。
※LaravelはターミナルからCtrl + Cで終了します。
本機からアクセス可能にする
仮想マシン内でLaravelが構築できたことが確認できたので、今度は本機からアクセスしてみます。
ポートを開放する
一旦Laravelを終了させます(ターミナルからCtrl + Cで終了)
Laravelは8000番ポートを指定しているので、8000番ポートを開きます。
sudo firewall-cmd --add-port=8000/tcp --zone=public --permanent
firewall-cmd --reload
IPアドレス指定でLaravelを起動する
ポートは無事解放しましたが、このまま再度Laravelを起動しても、まだプライベートIPアドレスでアクセスすることはできません。
Laravel起動時に、プライベートIPアドレスで実行できるように設定します。
がとても参考になりました。
cd /var/www/html/project-name/laravel
php artisan serve --host 192.168.xxx.xxx
これで本機からアクセスすると、Laravelの画面が表示されるようになります。
次はデバッグができるように、Xdebugの導入と設定をしていきます。