WordPress 설치에서 .htaccess 파일은 하위 디렉터리에 액세스할 때 403 오류를 발생시킵니다 foo
(하위 디렉터리는 WordPress 설치의 일부가 아니지만 나중에 내가 만든 것임). 예를 들어 다음과 같은 트리 파일이 있습니다.
/www
|-wp-content/
|-[all the stuff for wordpress]
|-.htaccess
|-foo/
|-.htaccess
보다 구체적으로 오류를 일으키는 줄은 www/.htaccess
다음과 같습니다.
RedirectMatch 403 \.(cgi|asp|aspx|cfg|dll|exe|jsp|mdb|sql|ini|rar)$
이 문제를 극복하기 위해 나는 다음을 만들었습니다 www/foo/.htaccess
.
RedirectMatch 200 \.(cgi|asp|aspx|cfg|dll|exe|jsp|mdb|sql|ini|rar)$
하지만 그 줄이 왜 영향을 미치는지 이해할 수 없습니다 foo
. 하위 디렉터리의 이름은 실제로 foo
(테스트용)이고 디렉터리는 입니다 .htaccess
.
답변1
foo 디렉토리에 정규식과 일치하는 파일이 있다고 가정합니다.
\.(cgi|asp|aspx|cfg|dll|exe|jsp|mdb|sql|ini|rar)$
.
나열된 확장자 중 하나가 뒤에 오는 모든 항목 과 일치합니다 .
따라서 foo 디렉토리에 bar.cgi
해당 경로가 있는 경우 foo/bar.cgi
경로 끝이 일치를 트리거하고 해당 디렉토리가 나열되지 않도록 합니다.
유리 진열장regex101의 이 동작