Publicación de una aplicación ASP.NET Core en IISPublish an ASP.NET Core app to IIS

En este tutorial se muestra cómo hospedar una aplicación ASP.NET Core en un servidor IIS.This tutorial shows how to host an ASP.NET Core app on an IIS server.

En este tutorial se describen los temas siguientes:This tutorial covers the following subjects:

  • Instalación del conjunto de hospedaje de .NET Core en Windows ServerInstall the .NET Core Hosting Bundle on Windows Server.
  • Creación de un sitio de IIS en el Administrador de IISCreate an IIS site in IIS Manager.
  • Implementación de una aplicación ASP.NET CoreDeploy an ASP.NET Core app.

Requisitos previosPrerequisites

  • El SDK de .NET Core instalado en el equipo de desarrollo..NET Core SDK installed on the development machine.
  • Windows Server configurado con el rol de servidor Servidor web (IIS) .Windows Server configured with the Web Server (IIS) server role. Si el servidor no está configurado para hospedar sitios web con IIS, siga las instrucciones de la sección Configuración de IIS del artículo Hospedaje de ASP.NET Core en Windows con IIS y, después, vuelva a este tutorial.If your server isn't configured to host websites with IIS, follow the guidance in the IIS configuration section of the Hospedaje de ASP.NET Core en Windows con IIS article and then return to this tutorial.

Advertencia

La configuración de IIS y la seguridad de los sitios web implican conceptos que no se describen en este tutorial.IIS configuration and website security involve concepts that aren't covered by this tutorial. Consulte las instrucciones de IIS en la documentación de Microsoft IIS y el artículo de ASP.NET Core sobre hospedaje con IIS antes de hospedar aplicaciones de producción en IIS.Consult the IIS guidance in the Microsoft IIS documentation and the ASP.NET Core article on hosting with IIS before hosting production apps on IIS.

Entre los escenarios importantes para el hospedaje de IIS que no se describen en este tutorial se incluyen los siguientes:Important scenarios for IIS hosting not covered by this tutorial include:

Instalación del conjunto de hospedaje de .NET CoreInstall the .NET Core Hosting Bundle

Instale el conjunto de hospedaje de .NET Core en el servidor IIS.Install the .NET Core Hosting Bundle on the IIS server. El lote instala .NET Core Runtime, .NET Core Library y el módulo ASP.NET Core.The bundle installs the .NET Core Runtime, .NET Core Library, and the ASP.NET Core Module. El módulo permite que las aplicaciones ASP.NET Core se ejecuten detrás de IIS.The module allows ASP.NET Core apps to run behind IIS.

Descargue al instalador mediante el vínculo siguiente:Download the installer using the following link:

Instalador del conjunto de hospedaje de .NET Core actual (descarga directa)Current .NET Core Hosting Bundle installer (direct download)

  1. Ejecute el instalador en el servidor IIS.Run the installer on the IIS server.

  2. Reinicie el servidor o ejecute net stop was /y, seguido de net start w3svc en un shell de comandos.Restart the server or execute net stop was /y followed by net start w3svc in a command shell.

Creación del sitio de IISCreate the IIS site

  1. En el servidor IIS, cree una carpeta para que contenga los archivos y las carpetas publicados de la aplicación.On the IIS server, create a folder to contain the app's published folders and files. En un paso posterior, la ruta de acceso de la carpeta se proporciona a IIS como la ruta de acceso física a la aplicación.In a following step, the folder's path is provided to IIS as the physical path to the app.

  2. En Administrador de IIS, abra el nodo del servidor en el panel Conexiones.In IIS Manager, open the server's node in the Connections panel. Haga clic con el botón derecho en la carpeta Sitios.Right-click the Sites folder. Haga clic en Agregar sitio web en el menú contextual.Select Add Website from the contextual menu.

  3. Proporcione el Nombre del sitio y establezca la Ruta de acceso física a la carpeta de implementación de la aplicación que ha creado.Provide a Site name and set the Physical path to the app's deployment folder that you created. Proporcione la configuración de Enlace y seleccione Aceptar para crear el sitio web.Provide the Binding configuration and create the website by selecting OK.

Creación de una aplicación Razor Pages de ASP.NET CoreCreate an ASP.NET Core Razor Pages app

Siga el tutorial Introducción a ASP.NET Core para crear una aplicación Razor Pages.Follow the Introducción a ASP.NET Core tutorial to create a Razor Pages app.

Publicar e implementar la aplicaciónPublish and deploy the app

Publicar una aplicación significa generar una aplicación compilada que se puede hospedar en un servidor.Publish an app means to produce a compiled app that can be hosted by a server. Implementar una aplicación significa trasladar la aplicación publicada a un sistema de hospedaje.Deploy an app means to move the published app to a hosting system. El paso de publicación lo controla el SDK de .NET Core, mientras que el paso de implementación se puede controlar mediante distintos enfoques.The publish step is handled by the .NET Core SDK, while the deployment step can be handled by a variety of approaches. En este tutorial se adopta el enfoque de implementación de carpetas, donde:This tutorial adopts the folder deployment approach, where:

  • La aplicación se publica en una carpeta.The app is published to a folder.
  • El contenido de la carpeta se mueve a la carpeta del sitio de IIS (la ruta de acceso física al sitio en el Administrador de IIS).The folder's contents are moved to the IIS site's folder (the Physical path to the site in IIS Manager).
  1. Desde el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Publicar.Right-click on the project in Solution Explorer and select Publish.
  2. En el cuadro de diálogo Elegir un destino de publicación, seleccione la opción de publicación Carpeta.In the Pick a publish target dialog, select the Folder publish option.
  3. Establezca la ruta de acceso Recurso compartido de archivos o carpeta.Set the Folder or File Share path.
    • Si ha creado una carpeta para el sitio de IIS que está disponible en el equipo de desarrollo como un recurso compartido de red, proporcione la ruta de acceso al recurso compartido.If you created a folder for the IIS site that's available on the development machine as a network share, provide the path to the share. El usuario actual debe tener acceso de escritura para publicar en el recurso compartido.The current user must have write access to publish to the share.
    • Si no puede realizar la implementación directamente en la carpeta del sitio de IIS en el servidor IIS, publique en una carpeta de un medio extraíble y mueva físicamente la aplicación publicada a la carpeta del sitio de IIS en el servidor, que es la ruta de acceso física del sitio en el Administrador de IIS.If you're unable to deploy directly to the IIS site folder on the IIS server, publish to a folder on removeable media and physically move the published app to the IIS site folder on the server, which is the site's Physical path in IIS Manager. Mueva el contenido de la carpeta bin/Release/{PLATAFORMA DE DESTINO}/publish a la carpeta del sitio de IIS en el servidor, que es la ruta de acceso física del sitio en el Administrador de IIS.Move the contents of the bin/Release/{TARGET FRAMEWORK}/publish folder to the IIS site folder on the server, which is the site's Physical path in IIS Manager.

Examinar el sitio webBrowse the website

Se puede acceder a la aplicación en un explorador después de que reciba la primera solicitud.The app is accessible in a browser after it receives the first request. Realice una solicitud a la aplicación en el enlace de punto de conexión que ha establecido en el Administrador de IIS para el sitio.Make a request to the app at the endpoint binding that you established in IIS Manager for the site.

Pasos siguientesNext steps

En este tutorial ha aprendido a:In this tutorial, you learned how to:

  • Instalación del conjunto de hospedaje de .NET Core en Windows ServerInstall the .NET Core Hosting Bundle on Windows Server.
  • Creación de un sitio de IIS en el Administrador de IISCreate an IIS site in IIS Manager.
  • Implementación de una aplicación ASP.NET CoreDeploy an ASP.NET Core app.

Para obtener más información sobre cómo hospedar aplicaciones ASP.NET Core en IIS, vea el artículo Información general de IIS:To learn more about hosting ASP.NET Core apps on IIS, see the IIS Overview article:

Recursos adicionalesAdditional resources

Artículos en el conjunto de documentación de ASP.NET CoreArticles in the ASP.NET Core documentation set

Artículos relacionados con la implementación de aplicaciones ASP.NET CoreArticles pertaining to ASP.NET Core app deployment

Artículos sobre la configuración HTTPS de IISArticles on IIS HTTPS configuration

Artículos sobre IIS y Windows ServerArticles on IIS and Windows Server