Ответ 1
Это ответ на ваш вопрос: http://www.codeproject.com/Tips/219637/Put-the-website-in-Maintanance-Mode-Under-Construc
Я разработал свое первое веб-приложение, которое, на удивление, становится очень популярным.
Поскольку веб-сайт теперь в прямом эфире, мне сложно делать некоторые изменения, опасаясь, что некоторые люди все еще вошли в систему и используют приложение.
Я хочу избежать дублирования экземпляра веб-приложения для тестирования.
Есть ли способ разместить веб-сайт в режиме обслуживания, только у меня есть доступ к нему? Подобно перенаправлению на страницу с некоторой информацией, сообщая ее в режиме обслуживания.
Спасибо.: -)
Это ответ на ваш вопрос: http://www.codeproject.com/Tips/219637/Put-the-website-in-Maintanance-Mode-Under-Construc
Я хочу избежать дублирования экземпляр веб-приложения для тестирование.
Это ваша проблема прямо там. Для чего угодно, кроме самых тривиальных сайтов, у вас должен быть экземпляр промежуточной стадии или разработки. Вы должны использовать источник управления и иметь script для обновления основного экземпляра.
Вы можете просто удалить файл с именем app_offline.htm
в корневом каталоге вашего сайта, и ASP.NET автоматически направит весь трафик на эту страницу. Этот файл может содержать любой HTML-код, который вы хотите указать, что ваш сайт не работает на короткий период из-за обслуживания.
Для получения дополнительной информации, пожалуйста, прочитайте App_Offline.htm и работайте над функцией "Ижевские ошибки" :
Как работает app_offline.htm, это вы помещаете этот файл в корень выражение. Когда ASP.NET видит это, он отключит приложение-домен для приложения (и не перезапускать его для запросы) и вместо этого отправить обратно содержимое файла app_offline.htm в ответ на все новые динамические запросы на приложение. когда вы сделали обновление сайта, просто удалите файл, и он вернется в Интернете.
В ASP.NET нет такой встроенной функциональности, кроме app_offline.htm, которая не совсем соответствует вашим потребностям, потому что даже вы будете отказал в доступе к сайту. Вы должны создать его самостоятельно, но это лучше всего делать на маршрутизаторах и уровне балансировки нагрузки, чем на уровне приложений. Конечно, это будет зависеть от вашей сетевой архитектуры.
Помимо создания реплики dev вашего сайта для создания исправлений и исправлений, не могли бы вы просто объявить о закрытии сайта для обслуживания за несколько дней до этого? Я не веб-программист, но вы можете посмотреть, что Hattrick, популярное онлайн-управление футболом, делает для поддержания своего сайта, Они используют систему уведомлений на домашней странице после входа в систему, которая объявляет, когда будет проводиться техническое обслуживание (обычно поздно ночью в Европе, где находится большая часть игроков и всех разработчиков), и они закрывают веб-сайт за пару часов. Когда они забирают сайт, они публикуют страницу, используя тот же стиль, что и остальная часть сайта, и дают оценку того, когда она будет работать снова. Простой, изящный, и в сочетании с длинным предупреждением он, похоже, делает хорошую работу, успокаивая базу пользователей.
Дайте пользователям долгое время, чтобы запланированное техническое обслуживание планировалось и дало им представление о том, для чего оно предназначено, и большинство людей смогут разместить время простоя. Ничто не является более неприятным, чем целенаправленно переходить на веб-приложение, которое было запущено и запущено 10-20 минут назад, чтобы внезапно обнаружить его недоступным и недоступным для обслуживания.
Попробуйте app_offline.htm
Какая версия ASP.NET? Я уверен, что есть еще несколько более элегантных способов сделать это, но вы можете изменить Документ по умолчанию в IIS для перенаправления на Maint.html(или аналогичный).