Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 12629|Відповідь: 0

[Веб] Самозапуск Nginx провалився

[Копіювати посилання]
Опубліковано 30.05.2015 23:46:28 | | |

Linode знову оновили~ Але оскільки старий комп'ютер у японській комп'ютерній кімнаті оновлюється кілька тижнів, я не можу дочекатися, тому відкрив новий комп'ютер, плануючи повернутися додому і, до речі, прибрати непотрібне сміття на сервері.

Нова машина використовує lnmp-скрипт установки в один клік, який я написав сам (насправді більшість коду знаходиться онлайн = =##), і після створення скрипта на DigitalOcean я встановив його на Linode для встановлення. Проблем із встановленням і перенесенням не було, але як тільки після встановлення знову запустили, виникла проблема.


Після перезавантаження логічно припустити, що Nginx має запускатися автоматично, але після тривалого очікування сайт все одно неможливо отримати доступ. Увійдіть у SSH і виконайте:

Сервіс NGINX START

Запустіть Nginx вручну, і сайт стане доступним дуже швидко. Самозапусковий скрипт працює нормально, і з ручним запуском проблем немає, чому nginx просто не запускається?

Переглядаючи журнали, я натрапив на таку лінію:

2014/05/02 17:02:28 [Emerg] 2912#0: прив'язати () до [2400:8900::f03c:91ff:fe6e:5889]:80 не вдалося (99: Неможливо призначити запитану адресу)

Складається враження, що при запуску Nginx IPv6 не був ініціалізований, тому запуск не вдався. Коли я заходжу в SSH і вручну запускаю Nginx, IPV6 вже ініціалізовано, тож він може запускатися нормально.

Мабуть, здогадався про причину, як це вирішити? Після довгого дня пошуку в Google я знайшов схожу проблему та рішення на ServerFault, і запишу її тут.

Вставте в /etc/sysctl.conf:
  1. sysctl -w net.ipv6.conf.eth0.dad_transmits=0
Копія коду
Або:

Додайте рядок у /etc/network/interfaces:
  1. post-up while ip -6 addr show tentative | grep . > /dev/null ; do sleep 1 ; done
Копія коду
Я використовую останній спосіб для вирішення проблеми.




Попередній:Про Discuz! (X3.1) Як увімкнути https-шифрування
Наступний:Проєкти-учасники Кубка Хоупу
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com