"location /"과 Nginx 기본 서버 블록 값의 차이점

"location /"과 Nginx 기본 서버 블록 값의 차이점

location / { }내가 올바르게 이해한다면 이것이 모든 잠재적인 URI와 일치하고 더 구체적인 URI를 가진 위치와의 전투에서 "패배"할 것이기 때문에 정의의 요점은 무엇입니까 ? 내 추론은 location / { }.

따라서 내가 옳다면 이것은 아무 소용이 없습니다.

server {
   root /www/html;
   location / {
      root /www/html;
   }

}

추신: 저는 nginx를 처음 접했기 때문에 질문을 더 유용하고 검색 가능하게 만들기 위해 더 나은 표현을 사용할 수 있는지 자유롭게 알려주십시오.

답변1

당신 말이 맞습니다. 당신의 구체적인 예는 아무 쓸모가 없습니다. 하지만 서버 수준에서 작동하지 않는 nginx 지시문이 많이 있습니다.

예를 들어:

server {
    proxy_pass http://localhost:8080;
}

^ 이것은 작동하지 않습니다.
v 이렇습니다.

server {
    location / {
        proxy_pass http://localhost:8080;
    }
}

서버 수준 지시문은 기본값입니다. 서버 수준에서만 작동하는 지시문이 있고 위치 수준에서만 작동하는 지시문이 있습니다.

근본적으로 다른 두 가지 사항은 귀하의 예가 동일한 결과를 가져온다는 것입니다.

관련 정보