Nginx 위치 ~/\.ht

Nginx 위치 ~/\.ht

locationNginx에서 다음 블록의 의미는 무엇입니까?

location ~ /\.ht {
    deny all;
}

제가 작은 WordPress 사이트를 가지고 있고 구성에서 이 블록을 제거하고 서버를 다시 시작했는데 사이트가 여전히 제대로 작동하는 것 같아서 묻습니다.

답변1

location ~ /\.ht {
    deny all;
}

이 지시문은 웹 서버에게 .ht루트 디렉터리( )로 /시작하는 모든 파일에 대해 들어오는 모든 요청을 거부하도록 지시합니다.

물결표는 ~nginx에게 정규식을 사용하도록 지시합니다.

따라서 등의 .htaccess파일은 제공되지 않습니다..htpasswd

참고: 점 앞의 백슬래시( )는 \점( 점 앞의 , 등 htaccess) 을 이스케이프 처리하기 위한 것입니다 htpassword.

답변2

귀하의 웹사이트가 example.com이라고 가정해 보겠습니다. 특정 위치는 입니다 example.com/.ht. 따라서 이 deny all지시문은 에 대한 모든 요청을 거부합니다 example.com/.ht*. (*는 후속 문자열을 나타냅니다)

~nginx정규식 기반 일치를 수행하려고 한다고 말합니다 . /귀하의 웹 사이트의 루트 디렉토리입니다. \이스케이프 문자입니다. .정규식의 일부가 아닌 문자 그대로 해석된다는 의미입니다 .

관련 정보