처리되지 않은 모든 호스트를 포착하도록 Nginx 설정 경우 가상 호스트와 일치하지 않는

이미 많은 가상 호스트가있는 경우 가상 호스트와 일치하지 않는 요청을 처리하기 위해 가상 호스트를 작성하려면 어떻게해야합니까? (즉, IP, .etc 등으로 연결된 다른 도메인에 의한 액세스)



답변

서버 이름 _; 청취 구성의 default_server가 찾고 있습니다.

예:

server {

   listen 80 default_server;
   server_name _;

   root /var/www/default; (or wherever)

}


답변

SSL을 사용하는 경우 default_server-인증서 및 키 (자체 서명 가능)에 대한 추가 배관이 필요합니다.

server {
    server_name _;
    listen 80 default_server;
    listen 443 ssl default_server;
    ssl_certificate <path to cert>;
    ssl_certificate_key <path to key>;
    return 404; # or whatever
}

Nginx는 IP / 포트 일치 default_server에서 SSL 연결을 수락하려고합니다. 그러한 서버에 인증서 / 키가 없으면 nginx는 연결을 끊습니다. 다른 서버는 시도하지 않습니다. 따라서 인증서 / 키를 잊지 마십시오.


답변

server {
  listen 80 default_server;
  listen 443 ssl default_server;
  listen [::]:80 default_server;
  listen [::]:443 ssl default_server;

  server_name _;
  root /path/to/default;
}

항목은 각각 포트 80 (HTTP), 포트 443 (HTTPS), 포트 80 IPv6 및 포트 443 IPv6에 대한 것입니다.

log_not_found off;찾을 수없는 페이지에 대한 로그 항목을 추가하지 않도록 추가 를 고려할 수 있습니다.


답변