htaccessで特定のフォルダのみアクセスを許可したい

laravelのソースをマルっとサーバにアップするとどうなるか確認

作成日:2024-03-13, 更新日:2024-03-13

.htaccessの記述

  • public以下はアクセスOK
  • public以外はアクセス禁止 or 404にしたい
RewriteEngine On

# 「public」以外を設定
RewriteCond %{REQUEST_URI} !^/public/
# RewriteRule ^(.*)$ - [F,L] # アクセス禁止
RewriteRule ^.*$ - [R=404,L] # 404ページ

# 「public」を設定
RewriteRule ^public/ - [L]

経緯

laravelをレンタルサーバにアップする場合ってどうなるんだろう?ってコトで調べてみた

サーバの設定

一番良いのは、サーバでlaravelのソースにある「public」を公開するように設定

.htaccessの設定

サーバの公開用のフォルダ(public_htmlやhtdocsなど)にマルっとlaravelのソースをアップ
アップしたファイルやフォルダで「app」や「routes」などをアクセス禁止にして「public」だけ許可する