Apache Web 服务器:AH00125:请求超出了使用 FallbackResource 的 10 个子请求的限制
Posted
技术标签:
【中文标题】Apache Web 服务器:AH00125:请求超出了使用 FallbackResource 的 10 个子请求的限制【英文标题】:Apache web server: AH00125: Request exceeded the limit of 10 subrequest with FallbackResource 【发布时间】:2016-02-02 07:48:11 【问题描述】:当我在我的 apache 2.4 Web 服务器配置中使用“FallbackResource”时,它显示错误“AH00125:请求超出了 10 个子请求嵌套级别的限制”..
请就如何解决这个问题提供一些帮助。 是指定url“http://localhost/bv-host/plusRoot/plus/fiets”并希望它被转发到默认的index.html:“/bv-host/plusRoot/plus/index.html”
我启用了调试日志记录。模式重写被禁用。如果我删除 FallbackResource 行,我不会看到此错误,而是看到例外的 404 错误。
我的 Mac 上默认安装了 2.4,并添加了以下配置:
FallbackResource /bv-host/plusRoot/plus/index.html;
Alias /bv-host/plusRoot "/Users/ed/Develop/Projecten/Web”
就是这样,调试日志 sn -p:
[client ::1:57840] mod_hfs_apple: Allowing access with matching directory. filename = /Users/ed/Develop/Projecten/Web/plus/index.html;
AH00125: Request exceeded the limit of 10 subrequest nesting levels due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
[client ::1:57840] AH00121: r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/index.html;
[client ::1:57840] AH00123: subrequested from r->uri = /bv-host/plusRoot/plus/fiets
【问题讨论】:
【参考方案1】:我在子文件夹中设置 Silex 应用程序时遇到了类似的问题。我只使用了FallbackResource index.php
,结果与你相同。
最终使用了经典的 Rewrite 示例。
RewriteEngine On
#RewriteBase /path/to/app
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^ index.php [QSA,L]
【讨论】:
【参考方案2】:我也遇到了这个问题,找到了解决办法。
在我的例子中,发生这种情况是因为页面请求的资源(它是一个 css 文件)没有放在好目录中。
<link href="somewhere_bad_directory/font-awesome.min.css" rel="stylesheet" type="text/css">
然后FallbackResource被调用了十次,没有提供资源,所以报错。
解决方案:在目录中使用“FallbackResource”时,如果您遇到此错误“AH00125:请求超出了 10 个子请求嵌套级别的限制”,请仔细检查您的页面是否有错误的资源。
【讨论】:
【参考方案3】:请注意,如果您的 FallbackResource 路径不是绝对的,您也可能会收到此错误。例如:
FallbackResource index.php
将在任何二级请求上失败:/foo/bar 将失败,因为它会尝试回退到 /foo/index.php。所以你需要指定根:
FallbackResource /index.php
【讨论】:
我觉得这是对所提出问题的正确解决方案。这样可以避免陷入循环。谢谢。 这个解决方案可以挽救生命。正是问题所在。以上是关于Apache Web 服务器:AH00125:请求超出了使用 FallbackResource 的 10 个子请求的限制的主要内容,如果未能解决你的问题,请参考以下文章
Apache/2.4.7 (Ubuntu) AH01630:客户端被服务器配置拒绝,尽管“要求所有授权”