2010-12-02 5 views
2

다른 사람이 디렉토리 안에 PHP 스크립트를 요청할 때마다 Apache 서버에서 호출되는 래퍼/핸들러를 만들려고합니다. 그렇게하면 전체 디렉토리에 대해 사용자에게 권한을 부여하거나 디렉토리가 호출 될 때 호출 할 다른 것들을 작성할 수 있습니다. Apache/PHP의 내부 서버 오류 AddHandler wrapper

이다 내가 가지고 올 수있었습니다 최상의 구성 ...

<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> 

[2010 수요일 12월 1일 12시 28분 6초] [오류] [클라이언트 xxx.xxx .xxx.xxx] 요청 이 구성 오류로 인해 내부 제한 인 리디렉션을 초과했습니다. 필요한 경우 'LimitInternalRecursion'을 사용하여 제한을 늘리십시오. 역 추적을 얻으려면 'LogLevel debug'를 사용하십시오.

참고 : LogLevel 디버그에서 아무 것도 보지 못했습니다.

이이 가상 호스트 안에,

또한
<?php 
$FILE = $_SERVER['PATH_TRANSLATED']; 
//readfile($FILE); 
die($FILE); 
?> 

, 유의하시기 바랍니다 ... 지금에 대한 '에코'또는 '다이를'일을하려고 ... 내 핸들러 (지금까지)입니다 지시어,하지만 그건 중요하지 않아야합니다. 나는 또한 "Action"지시어와 같은 것에 대해 세 번째 매개 변수 "virtual"옵션을 시도했다.

아무도 왜이 작업을 수행 할 것인지 알고 있습니까?

+0

@ user471231 - 다시 작성하거나 리디렉션 했습니까? – ajreal

답변

2

추측 - auth_handler 스크립트 auth_handler.php가 처리하려는 폴더 안에 있기 때문에 무한 루프가 발생합니다. 즉, PHP 요청을 받아서 auth_handler.php를 호출하여 auth_handler.php를 호출하여 처리기를 다시로드하는 등의 작업을 지시합니다. auth_hanlder.php를 해당 폴더에서 이동하여 문제가 해결되는지 확인합니다.

+0

좋아요, 분명히 그게 문제였습니다. 내가 어리 석다는 것을 믿을 수 없다. – user471231