Saltar al contenido

Publicar en IIS, configurando la variable de entorno

Contamos con tu ayuda para compartir nuestras secciones con relación a las ciencias de la computación.

Solución:

Esta respuesta se escribió originalmente para ASP.NET Core RC1. En RC2, ASP.NET Core pasó del controlador httpPlafrom genérico a uno específico de aspnetCore. Tenga en cuenta que el paso 3 depende de la versión de ASP.NET Core que esté utilizando.

Resulta que las variables de entorno para los proyectos de ASP.NET Core se pueden configurar sin tener que configurar variables de entorno para el usuario o sin tener que crear varias entradas de comandos.

  1. Vaya a su aplicación en IIS y elija Configuration Editor.
  2. Seleccione Configuration Editor
  3. Escoger system.webServer/aspNetCore (RC2 y RTM) o system.webServer/httpPlatform (RC1) en Section caja combo
  4. Escoger Applicationhost.config ... en From caja combo.
  5. Haga clic derecho en enviromentVariables elemento, seleccione 'environmentVariables' elementluego Edit Items.
    ingrese la descripción de la imagen aquí
  6. Establezca sus variables de entorno.
  7. Cierre la ventana y haga clic en Aplicar.
  8. Hecho

De esta manera, no tiene que crear usuarios especiales para su grupo o crear entradas de comandos adicionales en project.json. Además, agregar comandos especiales para cada entorno rompe “compilar una vez, implementar muchas veces”, ya que tendrá que llamar dnu publish por separado para cada entorno, en lugar de publicar una vez e implementar el artefacto resultante muchas veces.

Actualizado para RC2 y RTM, gracias a Mark G y tredder.

Actualizar web.config con un sección bajo


  
    
      
        
      
    
  

O para evitar perder esta configuración al sobrescribir web.config, realice cambios similares en applicationHost.config especificando la ubicación del sitio como sugiere @NickAb.


    
        
            
                
            
        
    


    
        
            
                
            
        
    

Editar: a partir de las versiones RC2 y RTM, este consejo está desactualizado. La mejor manera que he encontrado para lograr esto en el lanzamiento es editar las siguientes secciones de web.config en IIS para cada entorno:

system.webServer/aspNetCore:

Edite la entrada de variable de entorno y agregue una configuración de variable de entorno:

ASPNETCORE_ENVIRONMENT : < Your environment name >


Como alternativa al enfoque de drpdrp, puede hacer lo siguiente:

  • En su proyecto.json, agregue comandos que pasen la variable ASPNET_ENV directamente a Kestrel:

    "commands": 
        "Development": "Microsoft.AspNet.Server.Kestrel --ASPNET_ENV Development",
        "Staging": "Microsoft.AspNet.Server.Kestrel --ASPNET_ENV Staging",
        "Production": "Microsoft.AspNet.Server.Kestrel --ASPNET_ENV Production"
    
    
  • Al publicar, utilice el --iis-command opción para especificar un entorno:

    dnu publish --configuration Debug --iis-command Staging --out "outputdir" --runtime dnx-clr-win-x86-1.0.0-rc1-update1
    

Encontré que este enfoque es menos intrusivo que crear usuarios adicionales de IIS.

No se te olvide dar recomendación a este artículo si te fue útil.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *