Kann ich meine IIS7 Website-Bindungen programmatisch definieren (zB. Foo.domain.com)?

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

  •  03-07-2019
  •  | 
  •  

Frage

für meine IIS7 Website, ich habe in den IIS7 Services Manager gehen und alle Bindungen für den Standort definieren. Funktioniert.

Ich frage mich, ob es möglich ist, diese stattdessen in der Datei web.config programmatisch zu tun? Ich weiß, Sie können dort ein paar iis7 Einstellungen bieten .. war nicht sicher, ob es möglich ist, auch die Bindungen enthalten?

zB.

  1. http; alle nicht zugewiesenen IP-Adressen; Port 80; foo.domain.com
  2. https; 192.168.0.2; Port 443; blah.domain.com
War es hilfreich?

Lösung

Die Konfiguration wird in der Konfigurationsdatei der Mutter applicationHost.config gefunden, jedoch nicht sicher, dass ich es kann außer Kraft gesetzt werden. Zum Beispiel in IIS Express den Abschnitt Sie suchen, ist:

<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>

Sie könnten versuchen, laufen (sorry - ich habe jede mich nicht versucht, von diesen):

  

% windir% \ system32 \ inetsrv \ appcmd.exe Unlock Config -Abschnitt: system.applicationHost

Aber aus sicherheitstechnischer Sicht macht es keinen Sinn machen web.configs mit system.applicationHost zu jedem einzeln Schlamassel zu ermöglichen, wie eine Website Config jede andere Website brechen könnte.

Andere Tipps

Sehen Sie sich die Microsoft.Web.Administration Namespace. Sie können dann so konfigurieren, und die meisten von IIS 7 von C # -Code maniuplate.

gibt es auch ein Dienstprogramm Appcmd , dass man fast manipulieren alles in IIS 7.0. gewarnt, dass dieses Tool Tonnen von Optionen und Schaltern hat. Ich habe es nur für die einfachsten Aufgaben, wie physikalische Verzeichnisse auf Anwendungen zu ändern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top