Desplegar una aplicación C# Minimal API en IIS

En este post veremos paso a paso cómo publicar y desplegar una Minimal API de .NET en Internet Information Services (IIS).


📌 Requisitos previos

Antes de iniciar asegúrate de tener lo siguiente:


1. Publicar el proyecto en Visual Studio

  1. Abre tu proyecto de Minimal API en Visual Studio.
  2. Haz clic derecho en el proyecto → Publicar.
  3. Selecciona el destino Carpeta.
  4. Configura la carpeta de salida (ejemplo: C:\publish\MinimalAPI).
  5. Haz clic en Finalizar y luego en Publicar.

Esto generará los archivos necesarios para desplegar la aplicación.


2. Configurar el sitio en IIS usando el Default Web Site

En lugar de crear un nuevo sitio y configurar un puerto, utilizaremos el sitio predeterminado (Default Web Site) para que la URL sea más limpia (http://localhost o tu dominio).

  1. Abre IIS Manager (inetmgr).
  2. En el panel izquierdo, selecciona Default Web Site.
  3. Haz clic derecho → Convert to Application.
  4. Configura lo siguiente:
    • Alias: puedes dejarlo vacío o asignar un nombre que forme parte de la URL (ejemplo: apihttp://localhost/api).
    • Physical path: selecciona la carpeta publicada (C:\publish\MinimalAPI).
  5. Haz clic en OK.

De esta manera, la aplicación se desplegará en el puerto 80 y no necesitarás configurar un puerto específico en el navegador.


4. Habilitar HTTPS con certificado SSL

Si tu servidor ya tiene un certificado SSL configurado para la salida a Internet, puedes habilitar HTTPS en tu aplicación de la siguiente manera:

  1. Abre IIS Manager (inetmgr).
  2. Selecciona el sitio donde desplegaste la API (por ejemplo, Default Web Site).
  3. En el panel derecho, haz clic en Bindings….
  4. Haz clic en Add… para agregar un nuevo binding o selecciona el existente para HTTPS y haz clic en Edit….
  5. Configura lo siguiente:
    • Type: https
    • IP address: All Unassigned (o la IP específica de tu servidor)
    • Port: 443
    • SSL certificate: selecciona el certificado que ya esté configurado para la salida a Internet.
  6. Haz clic en OK para guardar.

Ahora tu Minimal API estará accesible vía HTTPS con una URL limpia, por ejemplo:
https://midominio.com o https://ip-del-servidor.


5. Configurar el Application Pool

  1. Ve a Application Pools en IIS.
  2. Localiza el pool creado para tu aplicación.
  3. Asegúrate de que:
    • .NET CLR Version esté en No Managed Code.
    • Managed pipeline mode esté en Integrated.
  4. Reinicia el pool si es necesario.

6. Permisos de carpeta

Dale permisos a la carpeta de publicación para que IIS pueda acceder:


7. Verificar la aplicación

  1. Abre el navegador.
  2. Accede a tu API con la URL configurada (ejemplo:
    http://localhost:5000/swagger).
  3. Si configuraste correctamente, deberías ver tu Swagger UI o la respuesta de la API.

🔧 Posibles problemas


✅ Conclusión

Desplegar una Minimal API de .NET en IIS es un proceso sencillo si se siguen los pasos correctos: publicar el proyecto, configurar IIS, ajustar el Application Pool, y asignar los permisos necesarios.

De esta manera, puedes tener tu API lista para usarse en producción en un servidor Windows.

@nthony

© 2025 Anthony

𝕏 GitHub