domingo, 25 de enero de 2015

Publicar y deploying pagina web en windows server 2008

publicar y deployin pagina web en windows server 2008

[ASP.NET] Web Service - Publicar en IIS Windows 7 (3/3)


Introducción

El uso de Win 7 o Windows Server implica contar con una versión de IIS mas robusta a la hora de exponer servicios para ser consumidos. Con Win 7 o Win 2008 contamos con IIS 7 el cual permite crear sitios web en un puerto especifico que definamos, esto no era posible de lograr en Win Xp
Este artículo es la continuación de:
[ASP.NET] Crear y Publicar - Web Service (1/3)
[ASP.NET] Web Service - Publicar en IIS Windows XP (2/3)
En esta oportunidad a diferencia de las anteriores usaremos un proyecto creado en VS 2010, básicamente es el mismo proyecto que fue convertido de versión para poder usar .net 4

Publicar Web Project VS 2010

Para cambiar un poco la situación de los contextos anteriores se usara el Visual Studio 2010, crear una aplicación web que exponga ya sea paginas o servicio requiere aplicar los mismos pasos expuestos en los artículos anteriores, toda la explicación anteriormente brindada es totalmente valida ya sea se use VS 2008 o 2010
VS 2010 brinda mas opciones al momento de publicar, se accede mediante un click del botón derecho del mouse
SNAGHTML30fe510
Al comparar la pantalla de publicación con la utilizada en los artículos anteriores se notaran mas completa
SNAGHTML3485763
Algo que rápidamente nos llama la atención es la creación perfiles de publicación, utilizado para definir un determinado set de opciones, en este caso hare uso de la publicación a una carpeta del disco local, y grabare el profile para poder reutilizarlo las veces que hagan falta
SNAGHTML34a9b36
El resultado será el mismo que se obtuvo en los artículos anteriores, paginas, servicios y dlls listos para ubicarlos en el IIS
SNAGHTML34e2c4e

Acceso a la opciones de publicación

La publicación tiene mas opciones de las esperadas, se puede acceder de forma rápida, si se habilita la toolbar
SNAGHTML34fc11e
se habilitara la opción
image
para acceder de forma rápida al profile de publicación.
Si se presto atención a la pantalla “Publish Web” se habrá notado una leyenda donde se hace mención a opciones avanzadas de publicación, se accede a esta por medio de las propiedades del proyecto web
SNAGHTML3536c79

Creación Sitio IIS 7

Al igual que sucedía con IIS 5 de Win Xp al acceder al administrador se cuenta con un sitio creado por defecto residente en el puerto 80
SNAGHTML3ba0b39
pero como diferencia ahora si se podrán crear sitio web que estén en el puerto que uno desea, el primer paso por supuesto será crear el sitio
SNAGHTML7691d5
Solo es cuestión de definir un nombre para el sitio, la ruta física donde se realizara el deploy y el puerto
SNAGHTMLcabdf5
recordemos que el Default Web Site es quien utiliza el puerto 80, por eso en este caso he usado el 8080, pero puede ser cualquier otro que uno decida usar
Seleccionando el sitio creado se podría acceder a opciones básicas y avanzadas
SNAGHTML1446628
SNAGHTML1456d97
Con estos simples pasos se ha creado un sitio, solo resta copiar los archivos publicados del paso anterior

Application Pool

Es importante notar como de forma automática al crear el sitio se define un Application Pool con el nombre del sitio
SNAGHTML147be65
este puede cambiarse por uno existente, pero es buena idea que cada sitio tenga su propio App Pool
En este se podrá configurar la versión del framework de .net que será usada, el usuario con el cual se ejecuta el sitio, si se dispone de una pc con arquitectura de 64 bits podrá habilitarse o no la compatibilidad con 32bit
Existe opciones básicas
SNAGHTMLd15055
Para configurar principalmente la versión del framework utilizado
SNAGHTMLcf988b
y opciones avanzadas
SNAGHTMLd3519c
en donde además de poder cambiar la versión del framework se puede definir el identity, el usuario que definan será con el cual se ejecuten los procesos, si quiere lanzar un .exe, una aplicación, acceder a una carpeta que esta por fuera del sitio, o a una shared folder, deben asegurarse que ese usuario tenga permiso
Igualmente el identity del App Pool no es el único lugar donde definir el usuario, se puede recurrir a la configuración del sitio, el web.config
<system.web>
 
<identity impersonate="true" userName="dominio\nombreusuario" password="password"/>
.
.
</system.web>
Deploy del desarrollo

Al copiar el contenido del código a la carpeta del sitio se podrá acceder al contenido, así como visualizarlo en el explorador
image
si en los pasos anteriores no modificaron ninguna opción puede que obtengan el siguiente mensaje de error
image
especialmente si usas una base de datos que se encuentra en el App_Data, la cual se adjunta de forma dinámica al servicio de sql server, para solucionarlo solo será necesario cambiar el usuario definido en el App Pool
SNAGHTML1acd4a5
Se podría cambiar a NetworkService
image
Ahora si al acceder a la pagina podremos ver que resuelve correctamente
SNAGHTML1afda9e
Una vez publicado el sitio se podría modificar de forma visual la configuración con la ayuda del IDE del IIS, por ejemplo, opciones como ser el connection string
SNAGHTML1d78c60
SNAGHTML1d64237
cambiar el valor desde el IIS impacta directo en el web.config del sitio
Código

Se ha usado Visual Studio 2010 y Sql Server Express 2008 R2
[C#]  


No hay comentarios:

Publicar un comentario