porta microsoft management azure publish azure-web-sites

azure - microsoft - ¿Cómo desconectar la aplicación web durante la publicación?



porta azure (2)

Muy a menudo, cuando pulso Publicar en VS13, obtengo el sitio para compilar, pero al cargarlo aparece el error que indica que un archivo está ocupado.

Actualización de archivo (MyAzureSite / PrecompiledApp.config).
C: ... / v12.0 / Web / Microsoft.Web.Publishing.targets (4255,5):
Error ERROR_FILE_IN_USE: la tarea de implementación web falló.
(El archivo ''PrecompiledApp.config'' está en uso.
Obtenga más información en: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE .)

Cuando sigo el enlace proporcionado, se sugiere que deba habilitar la regla appOffline . "¡Claro!", Pienso para mí. ¿ Pero cómo ? Lo busqué en Google, solo para obtener un montón de visitas en el archivo que supuestamente reemplazará el sitio durante la publicación. Sin embargo, no recibo información sobre cómo deshacerse de mi pequeño problema.

Fui por el camino fácil y descargué un perfil de publicación de mi sitio web de Azure y ahora lo estoy usando (ya sabe, ALT + B + H ).

En este momento, resuelvo el problema yendo al portal de Azure y sacando el sitio de forma manual. Luego puedo publicar y luego tomar el sitio en línea. Muy impráctico y dolorosamente tedioso.

¿Qué está causando esto y cómo lo mato?


La tarea de implementación del servicio de aplicaciones de Azure tiene una casilla de verificación para esto (a partir de la versión 2.0), en Opciones de implementación adicionales: quitar la aplicación sin conexión . Compruébalo y deberías ir bien.

Desconectar la aplicación: seleccione la opción para desconectar la aplicación web AzureRM colocando un archivo app_offline.htm en el directorio raíz de la aplicación web antes de que comience la operación de sincronización. El archivo se eliminará después de que la operación de sincronización se complete con éxito.

Captura de pantalla:


Usted realmente lo configura en el perfil de publicación (.pubxml). Simplemente agregue el elemento al PropertyGroup de la siguiente manera:

<PropertyGroup> <EnableMSDeployAppOffline>true</EnableMSDeployAppOffline> ... </PropertyGroup>

Más en este documento de MSDN