Introducción
Implementar una aplicación.NET Core en Internet Information Services (IIS) puede parecer complejo al principio, pero con los pasos correctos se convierte en un proceso simple. Esta guía lo guiará a través de la implementación de su aplicación.NET Core en IIS, desde los requisitos previos hasta la solución de problemas comunes.
Requisitos previos
Antes de comenzar, asegúrese de tener lo siguiente:
- Paquete de alojamiento y tiempo de ejecución.NET Core: instalado en el servidor que ejecuta IIS. Este paquete permite que IIS aloje aplicaciones.NET Core.
- IIS configurado en Windows Server: asegúrese de que IIS esté instalado y ejecutándose. Puede instalarlo a través del Administrador de servidores de Windows o PowerShell.
- Acceso de administrador: necesitará acceso de administrador al servidor para instalar el paquete de alojamiento y configurar IIS.
Paso 1: instale el paquete de alojamiento.NET Core
Visite la página oficial de descarga de.NET.
Seleccione la versión requerida y descargue el paquete de alojamiento.NET Core
Ejecute el instalador en su servidor. Se instalarán .NET Core Runtime, .NET Core Library y el módulo ASP.NET Core. El módulo ASP.NET Core es un componente necesario para alojar aplicaciones.NET Core en IIS.
Reinicie IIS para cargar los módulos recién instalados. Puede hacer esto ejecutando iisreset en el símbolo del sistema.
Paso 2: publique su aplicación.NET Core
Usando Visual Studio
Abra su solución en Visual Studio.
Haga clic derecho en el proyecto en el Explorador de soluciones y seleccione "Publicar".
Elija "Carpeta" como destino de publicación y especifique una carpeta para publicar los archivos de la aplicación.
Haga clic en "Publicar", Visual Studio compilará su aplicación y copiará los archivos necesarios en la carpeta especificada.
Usando el símbolo del sistema
Para publicar su aplicación.NET Core, navegue hasta el directorio del proyecto en la línea de comando. Luego, ejecute el siguiente comando:
dotnet publish -c Release
Este comando compila la aplicación en modo de lanzamiento y envía el resultado al directorio "bin/Release/netcoreapp{versión}/publish".
Paso 3: cree un grupo de aplicaciones IIS
Usando el Administrador de IIS
Abra el Administrador de IIS.
En el panel "Conexiones", haga clic derecho en "Grupos de aplicaciones" y seleccione "Agregar grupo de aplicaciones".
Asigne un nombre al grupo de aplicaciones y configure la versión de.NET CLR en "Sin código administrado", ya que.NET Core no depende del tiempo de ejecución de CLR. El modo de canalización administrada debe configurarse en "Integrado".
Haga clic en "Aceptar" para crear el grupo de aplicaciones.
Usando el símbolo del sistema
Abra el símbolo del sistema como administrador.
Ejecute los siguientes comandos:
cd %windir%\system32\inetsrv
appcmd add apppool /name:"DotNetCorePool" /managedRuntimeVersion:"" /managedPipelineMode:"Integrated"
Reemplace "DotNetCorePool" con el nombre que desea darle a su nuevo grupo de aplicaciones.
Paso 4: implementar la aplicación en IIS
Usando el Administrador de IIS
En el Administrador de IIS, haga clic derecho en "Sitios" en el panel "Conexiones" y seleccione "Agregar sitio web".
Ingrese un nombre para su sitio web y seleccione el grupo de aplicaciones que creó anteriormente.
Para la ruta física, busque y seleccione la carpeta donde publicó su aplicación.NET Core.
Especifique información de enlace (por ejemplo, dirección IP, puerto y nombre de host).
Haga clic en "Aceptar" para agregar el sitio web.
Usando el símbolo del sistema
También puede crear un sitio web en IIS utilizando el símbolo del sistema. Para crear un sitio web, escriba:
cd %windir%\system32\inetsrv
appcmd add site /name:MyWebsite /physicalPath:C:\inetpub\wwwroot\MyApp /bindings:http/*:80:example.com /apppool:DotNetCorePool
Reemplace "MyWebsite" con el nombre de su sitio web, C:\inetpub\wwwroot\MyApp con la ruta a su aplicación, example.com con su nombre de dominio y DotNetCorePool con el grupo de aplicaciones que creó en el paso anterior.
Paso 5: configurar el módulo ASP.NET Core
Asegúrese de que el archivo web.config esté configurado correctamente para que el módulo ASP.NET Core reenvíe solicitudes HTTP a su aplicación. Este archivo debe incluirse en el resultado publicado y contener configuraciones como las siguientes:
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\YourApplication.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="InProcess" />
</system.webServer>
</configuration>
Reemplace YourApplication.dll con el nombre de la dll de su aplicación.
Paso 6: prueba tu aplicación
Abra un navegador web y vaya a la URL que configuró para su sitio. Si todo está configurado correctamente, su aplicación.NET Core debería ejecutarse en IIS.
Resolviendo problemas comunes
Error HTTP 502.5 – Error de proceso: a menudo indica un problema con el proceso de inicio de la aplicación. Verifique los registros de eventos y los registros de salida estándar (si están habilitados) para detectar errores específicos.
Error interno del servidor 500: esto puede ocurrir por varias razones, incluidos problemas con el archivo web.config o dependencias de la aplicación. Nuevamente, los registros son invaluables para diagnosticar estos problemas.
404 Archivo o directorio no encontrado: esto puede ocurrir si la ruta física de la aplicación es incorrecta o si el grupo de aplicaciones está configurado incorrectamente.
Conclusión
La implementación de una aplicación.NET Core en IIS implica varios pasos, desde instalar el paquete de alojamiento.NET Core hasta configurar IIS y publicar la aplicación. Si sigue esta guía, podrá garantizar un proceso de implementación sin problemas y ejecutar su aplicación.NET Core en IIS en poco tiempo. Recuerde, la resolución de problemas es una parte integral de la implementación, así que no se desanime por los contratiempos iniciales; Utilice los registros y mensajes de error como guías para solucionar cualquier problema.