我正在尝试创建一个包装器/处理程序,只要有人在目录中请求任何PHP脚本,就会在Apache服务器上调用它。这样我就可以为整个目录授权用户,或者在调用目录时编写一些其他的东西。
这是我能够提出的最佳配置......
<Directory "/srv/http/INNOV/PUBLIC_HTML/kb">
Options -Indexes
AllowOverride All
Order allow,deny
Allow from all
DirectoryIndex index.php
AddHandler auth_handler .php
Action auth_handler /kb/auth_handler.php
</Directory>
[Wed Dec 01 12:28:06 2010] [错误] [client xxx.xxx.xxx.xxx]请求 超过10内部的限制 由于可能的重定向 配置错误。使用 'LimitInternalRecursion'增加 必要时限制。使用'LogLevel 调试'以获得回溯。
注意:我在LogLevel调试中没有看到任何内容。
这是我的经纪人(到目前为止)......现在只是试图做'回声'或'死'......
<?php
$FILE = $_SERVER['PATH_TRANSLATED'];
//readfile($FILE);
die($FILE);
?>
另外,请注意,这是在virtualhost指令中,但这不重要。我还尝试了“Action”指令的第三个参数“virtual”选项和同样的事情。
有人知道为什么会这样做吗?
答案 0 :(得分:2)
猜测 - 因为auth_handler脚本auth_handler.php存在于您尝试处理的文件夹中,您将获得无限循环。也就是说,它收到了php请求,将它指向auth_hanlder,它试图调用auth_handler.php然后再次加载处理程序等。将auth_hanlder.php移出该文件夹,看看是否能解决问题。