Từ nhật ký lỗi, có vẻ như cấu hình nginx của bạn. tập tin có một lệnh nghe với một địa chỉ IP rõ ràng:
listen a.b.c.d:443
Điều này có nghĩa là nginx sẽ không bắt đầu trừ khi giao diện mạng của bạn hoạt động và IP abcd đã được gán cho giao diện.
Bạn có hai lựa chọn:
- thay đổi chỉ thị nghe thành: nghe 443; (liên kết với tất cả các địa chỉ IP)
- làm cho nginx phụ thuộc vào mạng-online.target
Như được mô tả trong http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/ the Network.target chỉ cho biết rằng ngăn xếp quản lý mạng đã hoạt động [...] Cho dù mọi giao diện mạng đã được định cấu hình khi đạt được không định nghĩa được.
Nếu bạn muốn đảm bảo rằng địa chỉ IP đã được gán và giao diện được bật, bạn cần thêm mạng-online.target vào tệp đơn vị systemd của nginx.
Tệp /etc/systemd/system/multi-user.target.wants/nginx.service của bạn nên có mạng-online.target trong dòng After = và Request =.
[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target network-online.target
Requires=network-online.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target