Как настроить nginx чтобы он закрыл доступ к сайту и направил на заглушку во время ТО?
Пример реализации вывода заглушки при недоступности бэкенда:error_page 502 503 504 /maintenance.htm;
location ~ /maintenance\.(css|htm|jpg) {
        root /usr/share/nginx;
}
При этом сохраняется исходный адрес запроса. Удобство ещё в том, что данные параметры можно вынести в отдельный файл и подключить по необходимости через include для любого множества сайтов. Дополнительно можно организовать автоматическую перезагрузку страницы, например добавив в файле maintenance.htm строчку:<meta http-equiv="refresh" content="30" />
location / {
    return 302 site.com/stub.html;
}
перед всеми location'ами