Привет:
У меня есть macOS Server, с Profile manager и некоторыми другими сервисами, которым нужен Apache. И ведется локальная разработка, под которую нужен nginx.
По умолчанию, если nginx не запускается при старте системы, Apache резервирует порты 80 и 443.
Если nginx запускается раньше при старте системы, то он занимает 80 порт, а Apache каким-то магическим способом делает фейловер и производит проброс порта (3 и 6 строки), но как он это делает не могу понять, хочется это выяснить.
Моя задача – оставить порты 80 и 443 свободными (не резервируя их запуском nginx при старте системы, вызывая фейловер), для того, чтобы я мог запускать nginx локально или из докера, и воспроизвести этот проброс порта 127.0.0.1:80->127.0.0.1:49800 и 127.0.0.1:49800->127.0.0.1:80 не каким-то магическим образом, а подконтрольно.
Избавиться от Apache невозможно. Не запускать его тоже нельзя.
| => sudo lsof -nP -i4TCP | grep ':80'
Password:
nginx 85 root 7u IPv4 0x395c143ba29ae4d1 0t0 TCP *:80 (LISTEN)
httpd 108 root 4u IPv6 0x395c143ba18ae7c9 0t0 TCP *:8080 (LISTEN)
nginx 246 nobody 3u IPv4 0x395c143bac8d30f1 0t0 TCP 127.0.0.1:80->127.0.0.1:49800 (ESTABLISHED)
nginx 246 nobody 7u IPv4 0x395c143ba29ae4d1 0t0 TCP *:80 (LISTEN)
httpd 256 _www 4u IPv6 0x395c143ba18ae7c9 0t0 TCP *:8080 (LISTEN)
devicemgr 288 _devicemgr 10u IPv4 0x395c143bc0a270f1 0t0 TCP 127.0.0.1:49800->127.0.0.1:80 (ESTABLISHED)
httpd 447 root 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 451 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 452 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 453 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 454 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 455 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)
httpd 946 _www 4u IPv6 0x395c143ba61f0a49 0t0 TCP *:80 (LISTEN)