Як знайти відповідну папку файлів журналів для веб-сайту?


150

У inetpub \ logs \ LogFiles (W3SVC1, W3SVC2 тощо) є кілька веб-сайтів та декілька папок. Як я можу знайти, яку папку використовує певний веб-сайт?

Відповіді:


200

Гаразд, я знайшов цю властивість - вона називається "ідентифікатор сайту" і знаходиться в "Розширені властивості" веб-сайту.


2
Очевидно для одних, а не для інших (я), Ідентифікатор сайту може бути лише числом, а не буквено-цифровими символами.
Маріо Таке

22
що знаходиться в IIS7: клацніть R на сайті, виберіть "Керувати веб-сайтом" -> "Розширені налаштування"
пн

5
Він також показаний у кореневому вузлі Сайтів у списку.
Джош М.

Ідентифікатор: унікальна ідентифікація веб-сторінки, використання для файлів журналів та файлів трасування
Julian89757


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. З 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)
користувач626528

1
У ньому написано "недійсний синтаксис" у рядку 12
користувач626528

0

Існує також інший спосіб зробити це: усі журнали IIS записали б PORT Id як частину журналів. Наприклад, зразок журналу IIS може виглядати так: 2018-06-08 18:17:29 10.172.87.35 HEAD / hbeat / - 26358 - 192.xxx.xxx.xxx - - 200 0 0 0

у наведеному вище прикладі 26358 - це мій порт порту, і ви знаєте, що це відповідає одному з ваших веб-сайтів на тому ж сервері. Так просто відкрийте файл журналу та шукайте номер порту.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.