2009-03-14 23 views

Respuesta

9

Aquí hay un sitio que muestra diferentes técnicas para lograr esta tarea. Hay muchas técnicas que se pueden utilizar como una estrategia de implementación para la aplicación Web .:

Beansoftware How to Deploy ASP.NET Web Application

+2

La información de este artículo es un poco anticuado ahora. Consulte http://weblogs.asp.net/scottgu/archive/2010/07/29/vs-2010-web-deployment.aspx para conocer las opciones de VS2010. –

8

Alt + B + H combinación (Abre una ventana para ASP.NET sitio web/aplicación publicar) es el La forma más simple de implementar una aplicación en la ubicación requerida.

Publicar utilizado para compilar e implementar aplicaciones en el servidor.

6

Bueno, depende de lo que se intenta lograr desde el punto de vista de disponibilidad/disponibilidad. Las opciones de publicación/xcopy/installer son interesantes, pero todas olvidan abordar el problema de que lleva tiempo completar esas opciones. Desde el momento en que se copia el primer archivo en el directorio hasta el momento en que se copia el último archivo, el sitio está en un estado incoherente.

Los archivos ASPX pueden referirse a objetos de capa de datos que aún no están en el directorio bin, o el directorio bin puede tener un DLL con un conjunto cambiado de parámetros en una función, pero el aspx no ha sido instalado aún, por lo que el aspx todavía está buscando la función anterior. En resumen, porque la implementación no es un proceso atómico, usted puede/tendrá problemas.

Hemos solucionado este problema instalando los nuevos archivos en un nuevo directorio y luego yendo a IIS y cambiando el sitio web para que apunte al nuevo directorio. Esto hace que el cambio sea un proceso atómico y hace las cosas mucho más suaves. ¿Es perfecto? Nop. Puede tener problemas con viewstate o problemas de sesión (la sesión se conserva, pero tal vez el nuevo código busque algo en sesión que el código anterior no estableció) pero aún así hace que el proceso sea mucho más fluido.

Por supuesto, ninguna de estas soluciones aborda la otra parte no atómica de la actualización del sitio web ... la base de datos. Nuevamente, el proceso de cambiar el esquema DB toma tiempo. ¿Actualizas primero el código o la base de datos primero? ¿Puede el DB cambiar el trabajo sin el cambio de código (una nueva columna que admite nulo o tiene un valor predeterminado) o puede el código cambiar el trabajo sin el cambio de DB (eliminar una columna)? Eso es un análisis caso por caso, y no se aborda en ninguna de estas soluciones

Por supuesto, si puede expulsar a sus usuarios del sitio por un período de tiempo, entonces la vida es más fácil, pero si tratando de lograr el 100% de tiempo de actividad, entonces no es tan simple.

0

A veces no es práctico configurar Web Publish en el destino deseado. Si ese es el caso, es posible que aún pueda publicar en su máquina local (como se describe a continuación) y luego implementar XCOPY en su destino.

  1. en IIS sitios botón derecho del ratón y haga clic en Añadir sitio web
  2. configurar un nuevo sitio web como se muestra y haga clic en OK enter image description here
  3. En Visual Studio (que se ejecuta con privilegios de administrador), haga clic en su ASP Proyecto web .NET, seleccione Publicar ...
  4. Haga clic en el encabezado del perfil y en el menú desplegable seleccione Nuevo perfil personalizado ...
  5. Introduzca un nombre de perfil como "localhost44321", configurar el perfil como se muestra y haga clic en Publicar enter image description here
Cuestiones relacionadas