ich richtig verstehe, dass es falsch ist „reuseport“ für gleiche IP zu verwenden: PORT Paar auf verschiedenen virtuellen Hosts:Nginx des „reuseport“ für gleiche IP: Port-Paar auf verschiedenen virtuellen Hosts
http {
server {
listen 192.168.0.1:80 reuseport;
server_name server1;
…
}
server {
listen 192.168.0.1:80 reuseport;
server_name server2;
…
}
}
Diese Config gibt mir:
nginx: [emerg] duplicate listen options for 192.168.0.1:80 in /etc/nginx/vhosts/server1.local.conf:66
oder
nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
Also habe ich eindeutige IP zu verwenden: Port-Paare für jeden virtuellen Host?
In der gleichen Zeit Server-weite "listen 80 reuseport;" funktioniert gut, aber macht es dasselbe wie für eine eindeutige IP: PORT?
gelesen werden Es ist gleich zu setzen „hören 80 reuseport;“ Serverweit? –
Was Sie mit 'Server' meinen, ist unklar.zu klären: jeder Nginx-Server-Kontext pro Schema pro IP kann dies verwenden. Wenn Sie also ein nginx conf mit einem Server haben, der auf ip 1.2.3.4 spricht, der http spricht, und einem anderen nginx-Server, der auf 1.2.3.4 https hört, werden Sie 'reuseport' zweimal dort verwenden. Wenn Sie 1.2.3.4 mit demselben Schema (dh http oder https) mit einem anderen nginx conf-Server teilen, wird es dort automatisch aktiviert und nginx wird nicht korrekt geladen, wenn Sie versuchen, es erneut in diesem Server/ip/schema-Kontext zu setzen . – pozcircuitboy