¿Puedo definir programáticamente mis enlaces de sitio IIS7 (por ejemplo, foo.domain.com)?

StackOverflow https://stackoverflow.com/questions/809826

  •  03-07-2019
  •  | 
  •  

Pregunta

para mi sitio web IIS7, tuve que ingresar al Administrador de servicios IIS7 y definir todos los enlaces para el sitio. Funciona bien.

Me preguntaba si es posible hacer esto programáticamente en el archivo web.config. Sé que puede proporcionar algunas configuraciones de iis7 allí ... ¿no estaba seguro de si es posible incluir también los enlaces?

ej.

  1. http; todos los ip no asignados; puerto 80; foo.domain.com
  2. https; 192.168.0.2; puerto 443; blah.domain.com
¿Fue útil?

Solución

La configuración se encuentra en el archivo de configuración de la aplicación principal Host.config, sin embargo, no estoy seguro de que pueda anularse. Por ejemplo, en IIS Express, la sección que está buscando es:

<system.applicationHost>
...

    <sites>
        <site name="Development Web Site" id="1" serverAutoStart="true">
            <application path="/">
                <virtualDirectory path="/" physicalPath="%IIS_BIN%\AppServer\empty_wwwroot" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation=":8080:localhost" />
            </bindings>
        </site>
        <siteDefaults>
            <logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
            <traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
        </siteDefaults>
        <applicationDefaults applicationPool="IISExpressAppPool" />
        <virtualDirectoryDefaults allowSubDirConfig="true" />
    </sites>

</system.applicationHost>

Puede intentar ejecutar (lo siento, no he probado ninguno de estos yo mismo):

  

% windir% \ system32 \ inetsrv \ appcmd.exe desbloqueo config -section: system.applicationHost

Pero desde el punto de vista de la seguridad, no tiene sentido permitir que web.configs se enrede individualmente con system.applicationHost, ya que la configuración de un sitio podría romper todos los demás sitios.

Otros consejos

Mire el espacio de nombres de Microsoft.Web.Administration. A continuación, puede configurar y manipular la mayor parte de IIS 7 desde el código C #.

también hay una utilidad Appcmd que le permite manipular casi todo en IIS 7.0. Tenga en cuenta que esta herramienta tiene toneladas de opciones e interruptores. Solo lo he usado para las tareas más básicas, como cambiar directorios físicos en aplicaciones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top