AWS Beanstalk で作ったLaravel環境にBASIC認証をかける最もカンタンな方法


結論

public ディレクトリにいつものように、.htpasswd を作って、同じディレクトリの .htaccess を書き換えます。
ポイントは、htpasswdが設置されている絶対パスがどこなのか?ですが、ふつうに /var/www/html/publicだったと。

/public/.htpasswd
admin:(パスワード生成ツールなどで作ったハッシュ)
/public/.htaccess
AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /var/www/html/public/.htpasswd
require valid-user

<IfModule mod_rewrite.c>
....以下はそのまま

パスが違うようです

もしかしたら構成によって変わるかもしれません。不安な場合は info.php を作って確認後に消すとかすると良いかと思います。

/public/info.php
<?php
phpinfo();

なんなのこの投稿?

いや、ググらせていただいたんですが、「開発環境だけ利くようにする」とか「パスワードを自動的に作る」とかカッコいい方法がいろいろ出てきて、逆に「いや、とりあえず環境分けなくていいんで」とか「いつものやりかたはダメなの?」と思ってしまったけど、そんなことないよ! と言いたかっただけです。

Elastic Beanstalk すごいっすねー。前にLaravel環境構築したときは、サーバーにあれやこれやと前提条件がついた上に、MySQLでデータベース開いてvendorをFTPでアップして……とかやっていたのですが。もう作成も更新もGITにPUSHするだけとは。

そんな話もまた機会と需要があれば書きたいですね
(^^)