суббота, 20 сентября 2008 г.

app_offline.htm и статический контент

В ASP.NET 2.0 есть удобная фича, когда надо провести над сайтом массовые обновления. Чтобы пользователи не получали случайные ошибки, работу сайта можно временно приостановить, положив в корень приложения файл app_offline.htm. При этом пул приложения выключается (это фича также полезна если нам надо просто перегрузить сайт).

При наличии этого файла все запросы к сайту возвращают его содержимое с кодом 404 (чтобы поисковики не проиндексировали). Но вот засада – при обращение к статическим файлам – тоже возращается его содержимое! Т.е. не css внешний, ни картинки вставить в этот файл не получится.

Скорей всего, это происходит только с файлами ассоциированными для обработки ASP.NET. Но в встроенном веб-сервере Visual Studio Cassini и IIS 7.0 все файлы им обрабатываются! И выключить на уровне только папки со статическим содержимым модуль ASP.NET невозможно, только на уровне всего приложения. :(

UPDATE: Решил проблему несколько подругому :).

Так как с ASP.NET мы ничего сделать не можем, оффлайновый файл всегда на него влияет, нам нужен второй сайт, где ASP.NET нет. Но для этого не обязательно держать второй сервер с копией статических ресурсов. Можно завести второй сайт указывающий на ту же физическую директорию, где и основное приложение, и выключить для него ASP.NET.

Или же, что более элегантно, если все ресурсы хрянться в одной папке – создать второй сайт с корневой директорией именно в ней. Там не будет никакого asp_offline.htm файла – так что ASP.NET отключать не надо.

Конечно, чтобы обращаться к этому второму сайту – ему надо будет завести dns имя, что-нибудь типа static.example.com. И соответсвенно, прописать ссылки на необходимые статические ресурсы в файле app_offline.htm на этот домен.

Вот такое решение на практике. :)

9 комментариев:

Дмитрий Андриянов комментирует...

можно разместить весь CSS внутри файла, а картинки вставить через DataUrl

derigel комментирует...

Тоже вариант. Но когда я писал эту заметку 3 года назад кроссбраузерность такого решения была плоха. Не знаю как еа сегодняшний момент.

Анонимный комментирует...

Специально для Вас друзья мы возвращаем наш отличный проект на котором можно скачать все с файлобменников бесплатно [url=http://kachaitut.ru/]Игры[/url] . Все для Вас друзья.
Уважаемые Админы приглашаем Вас обменяться ссылками.

С Уважением, Администрация КачайТУТ.

Анонимный комментирует...

Друзья заходите к нам на сайт, здесь есть все новые шаблоны для dle, модули платные и бесплатные, хаки, новейшие релизы для datalife engine мы собираем все для вас со всего интерната [url=http://dlemodern.ru/]модули для dle[/url]

Анонимный комментирует...

Салон Секреты Красоты предлагает большой выбор классических салонных услуг: парикмахерские услуги, маникюр, педикюр, косметология, перманентный макияж. Мы работаем более 10 лет и придерживаемся принципа соотношения цены и качества обслуживания. Для постоянных клиентов действуют акции и бонусная система. Заходите на наш сайт [url=http://s-krasoti.ru/] эпиляция бикини-дизайн фото
[/url]

Анонимный комментирует...

Хотите Скачать филмы быстро и бесплатно, Вам сюда [url=http://expresskino.ru/]Хоббит: Нежданное путешествие[/url]

Анонимный комментирует...

Хотите Скачать филмы быстро и бесплатно, Вам сюда [url=http://expresskino.ru/]Скачать телесериалы[/url]

Анонимный комментирует...

Производственная компания «М-СЕТ» специализируется на производстве сварных сеток в рулонах, имеющих широкое применение в различных строительных работах.
Производство сварной сетки выполняется на многоточечных сварных машинах, методом контактно-точечной сварки крестообразных соединений. Все пересечения и стыки прутьев тщательно сварены, благодаря чему конструкция отличается превосходным качеством и является одной из самых прочных.
На нашем сайте Вы можете посмотреть образцы нашей продукции и связаться с нами
[url=http://setka-vlg.ru/]производство сварной сетки в рулонах купить
[/url]

Unknown комментирует...

Casino Review - Jordan17: Casino Online, Sportsbook - Airjordan
Read m 2 슬롯 a detailed review of our 추천 사이트 experience and discover the jordan 18 white royal blue online site casino. All the features of the 민속촌 사이트 site include the bonuses, top air jordan 18 retro yellow suede promotions and customer support.