Apache가 숨겨진 파일을 보도록 허용(Solaris)

Apache가 숨겨진 파일을 보도록 허용(Solaris)

이런 아파치 서버를 만들 수 있습니까?

Apache/1.3.41 Server at user.it.uu.se Port 80

특정 디렉터리에 숨겨진 파일(예: 점으로 시작하는 파일)을 표시하시겠습니까? 거기에 접근 가능한 구성이 있는데(문제 없음), 디렉토리로 이동할 때만 파일이 표시되지 않습니다. (물론 링크 등을 사용하여 HTML 인터페이스를 설정하거나 자동 업데이트도 할 수 있지만 저는 다른 파일처럼 파일을 보는 편이 낫습니다.)

이것은 우리 학교의 서버이므로 해당 디렉토리에 파일을 저장하고 서버에 숨겨진 파일을 표시하지 않는 습관을 무시하도록 지시하는 것 외에는 구성할 수 없습니다. 이게 당신이 평소에 하는 일인가요? 그렇다면 어떻게?

시스템(중요한 경우 uname -a):

SunOS yxan.it.uu.se 5.10 Generic_147440-25 sun4u sparc SUNW,Sun-Fire-V240

답변1

당신은 할 수 없습니다제거하다로컬 디렉터리에 있는 IndexIgnore의 파일입니다. 그러나 전역 IndexIgnore 줄에서 해당 파일을 제거한 다음 <Directory>실제로 파일을 숨기려는 디렉터리의 컨텍스트에서 두 번째 IndexIgnore 지시문을 사용할 수 있습니다.

여기에 있다mod_autoindex에 대한 문서.

답변2

소스 코드를 보면 도트 파일을 무시하도록 하드코딩된 것처럼 보입니다.

http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/src/modules/standard/mod_autoindex.c

if ((name[0] == '.') && (!name[1])) {
return (NULL);
}

다른 사람이 다르게 말할 수도 있겠네요...

답변3

이 PHP 해결 방법은 트릭을 수행합니다.

<?php
   if ($handle = opendir('.')) {
     while (false !== ($entry = readdir($handle))) {
       if ($entry != "." && $entry != ".." &&
           $entry != "index.php") {
         echo "<p><a href='$entry'>$entry</a></p>";
       }
     }
     closedir($handle);
   }
?>

실제 결과 보기여기.

관련 정보