2010-04-28 3 views
0

PHP_AUTH_USER님께 매우 혼란 스럽습니다. 내 웹 페이지에는 모든 디렉토리에있는 .htaccess 파일이 있으며, 특정 폴더를 볼 수있는 사람과 통제 할 수없는 사람을 제어합니다. PHP 코드 내에서 PHP_AUTH_USER를 사용하고자하는 페이지를 추가로 사용자 정의하기 위해 사용자 기반의 페이지 내용을 조정합니다.PHP_AUTH_USER은 (는) 특정 프레임에서만 알려져 있습니다.

이것은 부분적으로 만 작동하는 것 같습니다. 아래의 코드 스 니펫은 내 문제를 잘 나타내줍니다.

메인 index.php는 왼쪽 상단 모서리에 메뉴 구조가있는 프레임 페이지를 생성합니다. 오른쪽 상단에는 관련없는 항목이 있고 하단 프레임에는 맞춤 작성자의 내용이 있습니다. 왼쪽 상단에는 사용자가 올바르게 표시되지만 아래쪽 프레임에서는 PHP_AUTH_USER가 더 이상 설정되지 않습니다 (비어있는 경우와 $ HTTP_SERVER_VARS를 모두 인쇄하지 않을 경우).

Script.php는 다른 경로에 있지만 모두 .htaccess 파일이 있고 다른 모든 내용이 올바르게 표시됩니다. 왜 PHP_AUTH_USER에 대해 알지 못합니까?

크롬에서 실행 버전 php 버전 5.2.12.

index.php를

<FRAMESET ROWS="35%, *"> 
<FRAMESET COLS="25%, *"> 
<FRAME SRC="Menu.php"> 
<FRAME SRC="Something.php"> 
</FRAMESET> 
    <FRAME SRC="../OtherPath/Script.php?large=1" name="outputlisting"> 
    </FRAMESET> 
</FRAMESET> 

Menu.php

<ul> 
<li>Reporting 
<ul> 
<li>Link1 <a href="../OtherPath/Script.php" target="outputlisting">All</a>, <a href="../OtherPath/Script.php?large=1" target="outputlisting">Big</a> 
</ul> 
<?php 
echo 'IP Address: ' . $_SERVER['REMOTE_ADDR'] . '<br />'; 
echo 'User: ' . $_SERVER['PHP_AUTH_USER']; 
?> 

이 script.php

<?php 
echo 'User: ' . $_SERVER['PHP_AUTH_USER']; 
?> 

답변

0

난 그냥 당신이 제공 재현 할 수있는 코드를 사용하여 테스트를했다. 사용자 이름이 두 페이지 모두에 올바르게 나타났습니다. 디렉토리 중 하나에서 .htaccess를 제거한 경우에도 마찬가지입니다.

실행중인 Apache 버전은 무엇입니까? PHP는 어떻게 구성됩니까? 어떤 MPM 작업자가 활용되고 있습니까?

관련 문제