Laravel 9 如何禁止列出storage目录内容
问题描述
- 基于Laravel 9 + PHP 8.1 + Apache的生产环境应用中,用户可正常上传文件及头像:
- 头像URL(
https://my-app.com/storage/profile-photos/sad65f87as5f.png)右键在新标签页打开显示正常,符合预期; - 访问
https://my-app.com/storage/profile-photos时显示禁止访问,符合预期;
- 头像URL(
- 异常情况:访问
https://my-app.com/storage时,会列出该目录下所有文件夹,需要设置为禁止访问; - 额外要求:storage目录下的uploads文件夹及其所有内容需保持公开可访问状态。
解决方案
在项目根目录的public文件夹内的.htaccess文件顶部添加以下代码,即可禁用目录索引功能:
Options -Indexes
注意:直接在storage文件夹中添加.htaccess文件无法解决此问题,必须修改public目录下的.htaccess文件。
内容的提问来源于stack exchange,提问作者ThurstonLevi
相关产品推荐
相关产品推荐

