
디렉토리 목록을 명시적으로 설정하는 지시문이 있습니까?인덱스 파일 없이403 금지? 기본 동작은 404를 반환합니다.mod_dir인덱스 파일을 찾을 수 없습니다.
나는 가지고 있지 않다mod_autoindex로드되었으며 Options
그냥 으로 설정되었습니다 FollowSymLinks
. 시도했지만 -Indexes
여전히 404가 반환되었습니다.
<IfModule dir_module>
DirectoryIndex index.php index.html index.htm
DirectorySlash On
</IfModule>
<Directory /var/www>
Options FollowSymLinks
AllowOverride None
Require all granted
</Directory>
중요하지 않지만 Apache 2.4를 사용하고 있습니다.
답변1
많은 시행착오 끝에 내 자신의 질문에 대답합니다. 이 답변은 Apache >= 2.0에 적용되어야 합니다.
요약하자면, 지시문 Indexes
에 대한 옵션에는 다음이 Options
필요한 것 같습니다.mod_autoindex. 기본 Apache 동작에 대한 추가 정보가 필요하지 않으면 지금 읽기를 중단할 수 있습니다.
더 많은 정보
관건은 그렇지 않느냐이다.mod_autoindex로드됩니다. 로드되지 않은 경우 설정은 Options -Indexes
효과가 없으며 404를 반환합니다. 이는 mod_dir DirectoryIndex
지시문이 인덱스 파일을 찾을 수 없기 때문에 의미가 있습니다. 로드되면 설정에서 Options -Indexes
403을 반환합니다.
이는 에서 어느 정도 설명되어 있습니다.Apache 옵션 문서아래에인덱스Options
, 이는 mod_core의 일부이기 때문에 약간 혼란스럽습니다 .
인덱스
디렉토리에 매핑되는 URL이 요청되고 해당 디렉토리에 DirectoryIndex(예: index.html)가 없으면 mod_autoindex는 형식화된 디렉토리 목록을 반환합니다.
... 그리고 에 설명되어 있습니다.mod_autoindex페이지:
옵션 + 인덱스를 사용하면 자동 인덱스 생성이 활성화됩니다. 자세한 내용은 옵션 지시문을 참조하세요.
내 테스트에 따르면 .htaccess 파일을 활성화/비활성화하는 것은 AllowOverride
관련이 없습니다.