You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter3项目上传assets文件夹后遇Directory Access Forbidden问题求助

排查CodeIgniter3中assets目录「Directory Access Forbidden」错误

错误原因

  • 主目录下的.htaccess重写规则未将assets目录加入允许直接访问的资源列表,导致访问assets下资源或目录时,请求被规则导向index.php,结合服务器默认禁止目录索引的设置,触发权限错误。
  • assets目录及内部文件的服务器权限不正确(如目录权限低于755、文件权限低于644),也会导致访问被禁止。

解决方法

1. 修改主目录的.htaccess文件

找到主目录下的.htaccess,将assets添加到允许直接访问的资源列表中:

DirectoryIndex index.php
RewriteEngine on

# 新增assets到允许访问的列表
RewriteCond $1 !^(index\.php|assets|(.*)\.swf|fonts|images|css|less|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php?$1 [L,QSA]

2. 修正assets目录及文件权限

通过服务器控制面板或SSH命令调整权限:

  • 设置目录权限:chmod 755 assets/
  • 递归设置内部文件权限:chmod 644 assets/**/*

3. (可选)禁止assets目录浏览(推荐)

若无需开放目录结构浏览,可在assets目录下新建.htaccess文件,添加以下规则:

Options -Indexes
<IfModule authz_core_module>
Require all granted
</IfModule>
<IfModule !authz_core_module>
Allow from all
</IfModule>

该规则既允许访问目录内静态资源,又禁止直接浏览目录列表,提升安全性。

内容的提问来源于stack exchange,提问作者mohini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 14:00:33