Как найти соответствующую папку файлов журнала для веб-сайта?

150

В inetpub \ logs \ LogFiles есть несколько веб-сайтов и несколько папок (W3SVC1, W3SVC2 и т. Д.). Как я могу найти, какая папка используется данным веб-сайтом?

user626528
источник

Ответы:

200

Хорошо, я нашел это свойство - оно называется «идентификатор сайта» и находится в «Дополнительные свойства» веб-сайта.

user626528
источник
2
Очевидно, что для одних, а не для других (меня) идентификатор сайта может быть только числом, а не буквенно-цифровыми символами.
Марио Таке
22
который находится в IIS7: R-щелкните на сайте, выберите «Управление веб-сайтом» -> «Дополнительные настройки»
monty
5
Это также показано в корневом узле Сайты, в листинге.
Джош М.
Идентификатор: уникальная идентификация веб-сайта, использование для файлов журнала и файлов трассировки
Julian89757
30

«Откройте диспетчер IIS, щелкните папку веб-сайтов верхнего уровня, просмотрите списки сайтов в правой панели и перечислите идентификаторы приложений».

благодаря Сэму на сбое сервера

Доктор Блоуард
источник
5
Это также верно для IIS 7.5.
Дэвид Роджерс
13

Мы также можем получить его с помощью командной строки:

C:\>%windir%\system32\inetsrv\appcmd list site

Вывод будет выглядеть так:

SITE "Default Web Site" (id:1,bindings:HTTP/*:80:,state:Started)
SITE "Site1" (id:2,bindings:http/*:81:,state:Started)

Поле id соответствует идентификатору, найденному в файлах журнала. inetpub \ logs \ LogFiles (W3SVC1, W3SVC2

Прашант Сингх
источник
5

Вы можете найти на сайте свойства IIS Manager. В IIS 6 идентификатор веб-сайта - это случайное число для каждого создаваемого сайта, отличного от веб-сайта по умолчанию, у которого идентификатор веб-сайта равен 1.

Например:

  • w3svc1
  • W3SVC719499532
  • W3SVC383732556

Знание того, к какому веб-сайту они относятся, является проблемой, так как требует, чтобы вы вручную просматривали каждый веб-сайт. Следующий скрипт VB позволит вам вывести идентификатор и имя.

Сохраните сценарий в файл с расширением .VBS, а затем запустите с помощью этой команды (для 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")
Мин мин
источник
У меня нет такого диалога. Только вкладка свойств журнала, без имени файла. (Windows Server 2008)
user626528
1
В строке 12 указано «неверный синтаксис»
user626528
0

Существует также другой способ сделать это: все журналы IIS записывают идентификатор PORT как часть журналов. Например, пример журнала IIS может выглядеть следующим образом: 2018-06-08 18:17:29 10.172.87.35 HEAD / hbeat / - 26358 - 192.xxx.xxx.xxx - - 200 0 0 0

в приведенном выше примере 26358 - это мой порт, и вы будете знать, что это соответствует тому, какой из ваших веб-сайтов находится на том же сервере. Так что просто откройте файл журнала и найдите номер порта.

Sujeet
источник