2011-06-06 10 views
6

Tengo un archivo app_offline.htm brillantemente diseñado que me gustaría mostrar en mi sitio periódicamente cuando estoy haciendo cosas como hacer una copia de seguridad de la base de datos. En un servidor con un sistema de archivos real, esto no sería un problema: simplemente copie app_offline.htm en la raíz de mi aplicación, e IIS hará su magia y redirigirá todas las solicitudes a este archivo.Cómo usar el archivo IIS app_offline.htm con Azure

Sin embargo, estoy usando Azure, así que no hay sistema de archivos verdadera y no hay archivos de manera fácil movimiento alrededor de un lugar a otro.

¿Cómo puedo hacer que app_offline.htm juegue muy bien con Azure?

Respuesta

5

Actualmente es un sistema de archivos real, ya que cada instancia de VM se ejecuta en Windows 2008 Server (SP2 o R2 SP1). Para verlo usted mismo, habilite Escritorio remoto para su implementación y conéctese a una instancia en ejecución.

Sabiendo esto, debería poder configurar un mecanismo para realizar una copia de archivo de su app_offline.htm a la raíz de su aplicación en función de algún tipo de comando administrativo. Solo deberá asegurarse de que cada una de sus instancias de rol web realice esta acción.

+0

Supongamos que mantengo el app_offline.htm en mi directorio "/ images" ubicado justo al lado de la raíz. Así que estás diciendo que después de implementar el paquete en Azure, debería poder ejecutar un comando de administración o un archivo por lotes para copiar app_offline.htm de "/ images" a "/" y que puedo hacer todo esto desde un Escritorio remoto ¿conexión? Como señalo a continuación, mi co-fundador es el experto de Azure en el equipo, así que disculpen mi ignorancia en esta área. Tenía la impresión de que las acciones de tipo Archivo E/S eran bastante difíciles de hacer en Azure una vez que los nuevos bits se habían enviado a la nube. –

+0

Los cambios persistentes en el sistema de archivos son más difíciles cuando no son parte del paquete. Sin embargo, si tiene un mecanismo para copiar el archivo (por ejemplo, un proceso simple que observa una tabla o una cola), es algo trivial de implementar. David es correcto – dunnry

2

David le ha dado una buena respuesta. Sin embargo, es posible que te estés perdiendo lo que Azure puede hacer por ti. Debería poder eliminar virtualmente el tiempo de inactividad con Azure ejecutando varias instancias y utilizando SQL Azure, que es una copia de seguridad triple para usted. También puede hacer una copia de seguridad de SQL Azure usando http://msdn.microsoft.com/en-us/library/ff951624.aspx

+1

Mi cofundador es en realidad el experto de Azure en nuestro equipo, y ya estamos ejecutando varias instancias con SQL Azure. Sin embargo, hoy temprano, necesitaba actualizar el esquema DB, lo que significaba que parte del sitio estaba inactiva durante varios minutos. Cuando llegué al sitio, me redirigieron a mi página de error principal. Pero hubiera preferido tener el archivo app_offline.htm en la raíz durante esos pocos minutos. Tenía la impresión de que no es trivial realizar cosas relacionadas con E/S de archivos en una implementación de Azure. –

3

Pensé que agregaría esto, no lo he visto mencionar todavía. También puede hacerlo a través de la publicación web desde Visual Studio (o WebMatrix), simplemente ponga app_offline.htm en la raíz de su proyecto - el mismo nivel que su web.config principal. Cuando termine, simplemente cambie el nombre y vuelva a desplegar para volver a conectarse. 2 clics - fácil.

La opción manual es soltarlo en su /site/wwwroot a través de FTP.

Un pequeño secreto personal, no se podrá acceder a ninguno de los archivos de su sitio, hojas de estilo, etc. Por lo tanto, coloque sus elementos en un contenedor de manchas azul y viola.

Cuestiones relacionadas