Ir al contenido principal

Como publicar websites con ASP.NET MVC 5



Saludos amigos desarrolladores, hoy voy a dedicar este post a un tema en particular que puede causar dolores de cabeza: Publicar un proyecto web de .Net MVC 5

Anteriormente mi forma de publicar era directamente en el servidor de IIS, es decir configuraba mi web site, especificaba el tipo de seguridad y colocaba mis archivos resultantes de mi compilación en Release. Una vez que se tenía un ambiente estable era cosa  de coser y cantar, el problema venía cuando se configuraba el site como tal al inicio.

Afortunadamente las versiones más recientes de .Net entre sus tantas mejoras incluyeron un gestor de publicaciones que hará nuestra vida un poco más fácil, lo primero es que tenemos que correr Visual Studio.Net en modo de Administrador, de la siguiente manera: Vamos a nuestra barra de inicio y hacemos click derecho sobre el ícono de Visual Studio y seleccionamos "Ejecutar como Administrador".



Es probable que luego aparezca una pantalla de verificación preguntando si se desea que la aplicación haga cambios en nuestro equipo, decimos que si (Capitán Obvio en acción).

Luego para estar seguros que se está ejecutando Visual Studio como administrador, simplemente verificamos que en el título de la ventana diga (Administrador) de esta forma:


A continuación abrimos el proyecto que deseemos publicar y luego cambiamos el modo a Release así:



Si lo desean previamente pueden hacer una compilación en modo Release a fin de validar que todo esté correcto. Hacemos click derecho sobre el proyecto y seleccionamos "Publicar"



Para que la siguiente pantalla aparezca.



Seleccionamos de las opciones Custom y la siguiente ventana aparecerá.



especificamos como nombre LocalPublish (por ejemplo) y aceptamos, luego hacemos click en Next para que aparezca la siguiente pantalla



Importante estos detalles:

1.- en Publish Method seleccionamos "Web Deploy".

2.- En Server escribimos "localhost".

3.- En Site name (Muy importante respetar el nombre "Default Web Site") "Default Web Site/NombreApp" donde "NombreApp" es el nombre que deseamos dar a nuestro site local.

4.- Luego click en "Validate Connection" para verificar que si reconoce el site.

5.- Si está todo Ok un check verde aparecerá en la ventana. Luego click en "Next"

Tenemos ahora esta nueva pantalla


Acá el asistente detectará si hay conexiones a alguna Base de Datos, en mi solución hay dos, una que es la Default y la otra por un Modelo de Entity Framework, yo para mi tranquilidad personal prefiero hacer click en los botones que están al lado de cada lista desplegable y configurar mis cadenas de conexión, es mejor prevenir que lamentar, en mi caso configuré las dos conexiones, luego botón Next.

Se presenta ahora esta pantalla.



Click en "Start Preview", se cargan los cambios detectados y luego se listan los elementos a publicar.



Como un detalle importante, es muy posible que se tenga que repetir este proceso dependiendo de la naturaleza del proyecto, en la primera publicación se muestran todos los elementos, ya las siguientes solo se muestran los elementos actualizados.

Verificamos que esté correcto todo y click finalmente en Publish. De estar todo bien debemos tener en nuestra ventana de salida el siguiente mensaje:



Y una carpeta llamada Publish Profiles con un archivo LocalPublish.pubxml debe aparecer en nuestro proyecto



Para estar seguros corremos entonces nuestra aplicación en el navegador.


Y verificamos en el IIS:



Bien mis amigos, es todo por ahora, espero que este post les haya sido de gran utilidad, ya saben... Happy Coding!!!


Comentarios

Entradas populares de este blog

Como trabajar con decimales en ASP.Net MVC 5

Saludos a todos, este blog viene como una mezcla de varias cositas, es un experimento ya que peculiarmente he notado que casi no hay blogs dedicados a tips de programación de .Net en español y ciertamente la barrera de idiomas afecta de alguna manera u otra al desarrollador que busca una solución a sus problemas y la otra vertiente es que simplemente deseo ayudar, ayudar a quienes duran horas o días estancados en problema que quizás se podía resolver en pocas líneas de código, así que ¿Por qué no compartir las experiencias vividas para que otros no tengan tan cuesta arriba resolver alguna dificultad? Esta es mi primera entrada y espero que la disfruten. La pesadilla de todo desarrollador, trabajar con elementos globalizados como fechas y números con decimales, como todos bien saben este siempre es un tema que siempre trae algún que otro problema y que incluso puede quitar horas o días resolverlo, lo bueno es que existen miles de soluciones, algunas requieren líneas de cód...

Seguridad en ASP.Net Identity 2.0 con Webforms Parte 1

¡Saludos colegas desarrolladores y afines! En esta ocasión quiero compartir con Ustedes un pequeño tutorial para trabajar con ASP.Net Identity 2.0 en Webforms. Este creo que será quizás uno de los más complicados de hacer, así que tenedme paciencia. Planeo hacer de esta entrada la primera de varias partes. Como siempre me gusta indicar de donde me basé para escribir el post y fue de ACÁ  hay que dar el reconocimiento a la autora original: Raquel Soares De Almeida, es lo justo, claro yo simplemente digiero un poco el post y lo entrego a Ustedes con algunos detalles que el autor original pudo obviar por razones diversas. En este post en particular voy a ir a lo básico, crear el proyecto desde cero. 1.- Comenzamos con el clásico menú Archivo -> Nuevo -> Proyecto. 2.- Continuamos con la siguiente pantalla donde simplemente seleccionamos bajo la opción de plantillas a la izquierda Visual C#, luego Web y por último ASP.Net Web Forms Application (...

Seguridad en ASP.Net Identity 2.0 con Webforms Parte 2 (Owin el primo raro de Identity)

Este post es la segunda parte de una serie que planeo dedicar a ASP.Net Identity 2.0, como el post anterior este post está basado en ÉSTE  y fue creado por: Raquel Soares De Almeida. La razón de hacer una recopilación de este tema basado en algo ya publicado es que el post original esta en Ingles y quizás a algunos se le complique por la barrera del idioma, otra razón es que yo adiciono pequeños detalles que considero necesario reflejar y lo último es que son necesarias estas dos primeras partes para futuras publicaciones que verán acá prontamente, como aplicar filtrados por roles y asignar roles a usuarios, con esto aclarado comencemos nuestro post. Todos tenemos un primo raro que es algo excéntrico, Identity tiene el suyo y tiene hasta nombre, se llama Owin, el primo Owin.  El primo Owin es una capa intermedia basada en cookies mediante forms. Realmente es muy pero muy interesante, Owin combinado con Identity hacen muy bien la tarea de darnos la seguridad ne...