Unter inetpub \ logs \ LogFiles (W3SVC1, W3SVC2 usw.) befinden sich mehrere Websites und mehrere Ordner. Wie kann ich herausfinden, welcher Ordner von einer bestimmten Website verwendet wird?
Unter inetpub \ logs \ LogFiles (W3SVC1, W3SVC2 usw.) befinden sich mehrere Websites und mehrere Ordner. Wie kann ich herausfinden, welcher Ordner von einer bestimmten Website verwendet wird?
Antworten:
Ok, ich habe diese Eigenschaft gefunden - sie heißt "Site-ID" und befindet sich in "Erweiterte Eigenschaften" der Website.
"Öffnen Sie den IIS-Manager, klicken Sie auf den Ordner mit den Websites der obersten Ebene, zeigen Sie die Listen der Websites im rechten Bereich an und listen Sie die App-IDs auf."
Wir können es auch über die Kommandozeile erhalten:
C:\>%windir%\system32\inetsrv\appcmd list site
Die Ausgabe wäre wie folgt:
SITE "Default Web Site" (id:1,bindings:HTTP/*:80:,state:Started)
SITE "Site1" (id:2,bindings:http/*:81:,state:Started)
Das ID-Feld entspricht der in Protokolldateien gefundenen ID. inetpub \ logs \ LogFiles (W3SVC1, W3SVC2
Sie finden auf den Website-Eigenschaften des IIS-Managers. Bei IIS 6 ist die Website-ID eine zufällig generierte Nummer für jede Site, die anders als die Standardwebsite mit einer Website-ID von 1 erstellt wird.
Beispielsweise:
Zu wissen, auf welcher Website sich diese befinden, ist ein Problem, da Sie jede Website manuell anzeigen müssen. Mit dem folgenden VB-Skript können Sie die ID und den Namen ausgeben.
Speichern Sie das Skript in einer Datei mit der Dateierweiterung .VBS und führen Sie es mit diesem Befehl aus (für IIS 6).
cscript MyFile.VBS
Function ProcessWebSite(ServiceType, SiteNumber)
Set IISWebSite = getObject("IIS://localhost/" & ServiceType & "/" & SiteNumber)
Set IISWebSiteRoot = getObject("IIS://localhost/" & ServiceType & "/" & SiteNumber & "/root")
ProcessWebSite = IISWebSite.ServerComment
Set IISWebSiteRoot = nothing
Set IISWebSite = Nothing
end function
Function ShowSites(ServiceType, ClassName, Title)
Wscript.echo "Web Sites Description"
Wscript.echo "==============================================================="
Set IISOBJ = getObject("IIS://localhost/" & ServiceType)
for each Web in IISOBJ
if (Web.Class = ClassName) then
wscript.echo Ucase(ServiceType) & "/" & Web.Name & _
Space(17-(len(Ucase(ServiceType))+1+len(Web.Name))) & " " & _
ProcessWebSite(ServiceType, Web.name)
end if
next
Set IISOBj=Nothing
WScript.Echo ""
End function
Call ShowSites("w3svc", "IIsWebServer", "Web")
Es gibt auch eine andere Möglichkeit: Alle IIS-Protokolle schreiben die PORT-ID als Teil der Protokolle. Ein Beispiel für ein IIS-Beispielprotokoll könnte folgendermaßen aussehen: 2018-06-08 18:17:29 10.172.87.35 HEAD / hbeat / - 26358 - 192.xxx.xxx.xxx - - 200 0 0 0
Im obigen Beispiel ist 26358 meine Port-ID, und Sie wissen, dass dies einer Ihrer Websites auf demselben Server entspricht. Öffnen Sie einfach die Protokolldatei und suchen Sie nach der Portnummer.