nginx가 모든 IP에서 수신 대기하는 것을 중지하시겠습니까?

nginx가 모든 IP에서 수신 대기하는 것을 중지하시겠습니까?

기본IP 1개, 보조IP 1개가 있습니다. 보조 IP는 이 질문과 관련이 없는 이유로 이 IP에서만 수신 대기하는 특수 Go 웹 서버를 의미합니다.

불행히도 Nginx가 듣기로 결정했기 때문에 작동하지 않습니다.모두IP이므로 내 사용자 정의 웹 서버는 해당 IP 및 포트에 바인딩할 수 없습니다. 다른 포트를 사용할 수 없습니다. 이 포트여야 합니다. 그래서 이 전용 목적을 위해 두 번째 IP 주소를 구입했습니다.

Nginx가 모든 IP가 아닌 기본 IP에서만 수신하도록 하려면 어떻게 해야 합니까?

저는 우분투 18.04를 사용하고 있습니다.

답변1

다음은 http 전용 구성의 예입니다. Https는 실제로 다르지 않습니다.

server {
  #This is the important listen block to specify:
  listen      <ip-address>:80;
  server_name example.com;
  root        /var/www/html;
  index index.html index.php;

  location / { 
    try_files $uri $uri.html $uri/ /index.html;
  }

  error_page 404 /404.html;
}

구성에 이 항목이 있는 경우 이를 제거하여 ipv6를 비활성화할 수 있습니다.

listen [::]:80 default_server

그런 다음 netstat로 테스트하면 다음과 같습니다.

test@computer:/etc/nginx/conf.d# netstat -na | grep -i "Listen" | grep ":80"
tcp        0      0 <ip-address>:80       0.0.0.0:*               LISTEN  

관련 정보