Как разбудить мой сервер Ubuntu по HTTP-запросам из локальной сети?
У меня есть веб-сервер Ubuntu 22.04.1, на котором работает сервер Apache2, на котором размещены 2 сайта [веб-сайт Django и другой сайт хостинга файлов]. Чего я пытаюсь достичь: перевести сервер в режим сна все время, пока он не используется. когда он получает HTTP-запрос, он просыпается на 20 минут. (Чтобы дать клиентам немного времени на использование веб-сайта), а затем идите спать.
Я справился со второй частью, установив таймер автоматического сна Ubuntu на 20 минут. и это сработало (засыпает через 20 мин после пробуждения)
Моя проблема связана с 1-й частью. После нескольких дней исследований и попыток я не могу найти способ заставить сервер просыпаться только по HTTP-запросам. Я попробовал wol ethtool, все параметры «pumb», но сервер просыпается в случайное время, не отправляя никаких запросов на сервер.
1 ответ
Это невозможно. HTTP-запросы обрабатываются веб-сервером, который находится внутри вашего сервера Ubuntu. Если ваша виртуальная машина сервера Ubuntu выключена, входящий трафик никогда не достигнет веб-сервера, который находится внутри нее.
В лучшем случае вам, вероятно, лучше всего использовать технологию WOL (Wake On Lan) в вашем брандмауэре, чтобы отправить Magic Packet, чтобы снова включить виртуальную машину и убедиться, что ваш веб-сервер настроен на автоматический запуск при загрузке.