2009-08-19 4 views
8

간혹 사이트를 열려고 할 때 "이 사이트는 유지 관리를 위해 오프라인 상태입니다"라는 메시지가 표시되고 일부 의견은 아마도 얼마나 오랫동안 지속될 지에 대한 의견이 이어집니다. 스택 오버플로도 마찬가지입니다."유지 관리를 위해 오프라인입니까?"페이지는 어떻게 구현 되었습니까?

어떻게 작동합니까? 나는 내 HTTP 요청에 응답하고이 페이지를 제공하는 사이트가 종료 된 경우를 의미합니까? 페이지가 삭제 될 때까지

App_Offline.htm 

모든 요청이로 이동합니다라는 파일을 배치 asp.net의 트릭이있다

+0

관련 질문 : http://stackoverflow.com/questions/756532/strategies-for-showing-a-nice-currently-offline-page-when-the-server-is-down – Spoike

답변

18

.

다른 환경의 경우 서버가 가리키는 위치 또는 다른 계획을 변경할 수 있습니다.

- 편집

서버에 독립적 접근 방식은로드 밸런싱 같은 것을 통해 이루어진다.

후드 아래에서 요청을 주어진 내부 서버로 보낼 수 있습니다. 그런 다음 'downtime'페이지를 표시하도록 구성한 서버 'a'에 모든 요청을 지정하도록 결정할 수 있습니다. 그런 다음 서버 'b'를 변경하고 성공한 것으로 확인한 다음 모든 요청을 'b'로 지정합니다. 그런 다음 'a'를 업데이트하고 요청을 모두에게 보냅니다.

11

ASP.NET (및 ASP.NET MVC Stackoverflow 사용) app_offline.htm feature에 의해 제공됩니다. 이 작업은 모든 ASP.NET 요청을 app_offline.htm 파일로 전달함으로써 간단히 작동합니다.

덧붙여서 ASP.NET의 copy Web Site tool은이 파일을 웹 응용 프로그램의 루트에 배치하는 과정을 수행하고 웹 사이트 파일을 복사 한 다음이 파일을 삭제합니다.

다른 기술에 대한 전략은 discussed here입니다.

2

아파치 역방향 프록시 서버가 해당 아키텍처의 일부로 사용되는 경우 해당 응답을 보내도록 구성 할 수 있습니다.

5

아파치에서는이 콘텐츠와 함께 .htacces 파일을 사용할 수 있습니다.

order deny,allow 
allow from 192.168.1.151 
deny from all 

ErrorDocument 403 404.html 
ErrorDocument 404 404.html 
ErrorDocument 500 404.html 

이렇게하면 하나의 IP를 제외한 모든 사용자의 액세스가 거부되고 정적 404.html 파일이 제공됩니다.

로드 균형 조정 및 기타 사항이없는 서버가 하나 뿐인 경우에 사용할 수 있습니다. 부하 분산을 위해 일해야합니다.

관련 문제