Laravel 6 を Apache (XAMPPなど) で動かすインストール手順と開発用の設定方法

はじめに

Webプログラミングを行う際、僕はローカル環境の構築に Docker をよく使います。

Docker は本番に近い環境で開発を進めることができるので便利なのですが、構築の手間や動作コストなどのデメリットもあります。

そのため、学習や実験などでちょっと試すときには Windows や Mac 上の Apache を使って行っています。

ところで Laravel の開発では artisan server コマンドを使って動かすのが一般的なようで、インストール方法を調べると、その記事が多く見受けられます。しかし僕としてはやはり Apache で動かしたかったで、いろいろと試してきました。

そこで今日は、僕が Laravel で実験する際によく使っている、Laravel 6 を Composer でインストールして Apache HTTP Server 上で動かすまでの手順を、 XAMPP の場合を例にご紹介します。

今回の記事では XAMPP や Apache、Composer のインストール手順は割愛します。
Laravel
6.18.3
XAMPP
7.4.4
PHP
7.4.4
Apache
2.4.43
OS
Windows 10 Home
目次
  1. Laravel 6 を Composer でインストール
  2. htaccess で URL から public を消す
  3. メール送信をログ出力に変更
  4. おわりに

1. Laravel 6 を Composer でインストール

公式ドキュメントで紹介されているように、下記コマンドで Laravel 6 をインストールします。

下記例は XAMPP を想定し、ドキュメントルートの「lara6」というフォルダにインストールしています。インストールパスや、フォルダ名は適宜変更してください。

> cd c:\xampp\htdocs
> composer create-project --prefer-dist laravel/laravel lara6 "6.*"

2. htaccess で URL から public を消す

このままだと http://localhost/lara6/public のようになるので、この /public を省略するようにします。httpd.conf などで変更する方法もあるのですがちょっと手間なので、僕は .htaccess で変更しています。

.htaccess は下記 gist で公開されているものを使っています。タイトルは laravel 5.5 となっていますが 6 でも使用可能です。

リダイレクトがうまくいかない場合は .htaccess の内容が間違っていないか(コピペミスなど)、もしくは apache の設定で .htaccess や mod_rewrite が無効になっていないか確認してください。

3. メール送信をログ出力に変更

これはちょっと余談ですが、僕はメール送信の確認に Laravel のログファイル出力機能を使用しています。誤操作防止もかねてインストール直後に .env ファイルを下記のように変更しています。

/.env
MAIL_DRIVER=log
MAIL_HOST=
MAIL_PORT=

4. おわりに

最後にもう少し、僕が実際にどう使っているかをご紹介します。実験用プログラムのフォルダを用意し、hosts と httpd-vhosts.conf を編集してhttp:://example.localhost のような URL でそのフォルダにアクセスするようにしています。

そして、そのフォルダの中で上記コマンドを使って Laravel をインストールし、http:://example.localhost/lara6 という感じで使うことが多いです。

もし /lara6 のようなサブディレクトリの中ではうまく確認できない場合は、http://lara6.localhost/ などでアクセスできるように設定して試しています。

hosts や httpd-vhosts.conf の設定方法については割愛しますが、検索サイトで hosts、httpd-vhosts、バーチャルホスト、サブドメイン、などの単語で検索すれば見つかると思います。