로컬 IIS에서 호스팅되는 지원 웹 사이트가 필요한 타사에서 응용 프로그램을 설정하려고합니다. 설치 안내서에 설명 된대로 정확하게 웹 사이트를 만들었지 만 몇 가지 문제가 있으며 IIS 로그의 내용을보고 싶습니다. 당황스럽게도 문제는 로그 파일을 찾을 수 없다는 것입니다!
그래서 내 질문은 : IIS7은 기본적으로 로그를 어디에 저장합니까?
답변
액세스 로그의 기본 위치는
%SystemDrive%\inetpub\logs\LogFiles
그렇지 않으면 IIS 관리자에서 확인한 다음 왼쪽 창에서 컴퓨터를 선택하고 가운데 창에서 IIS 영역의 “로깅”으로 이동하십시오. 거기에 모든 사이트의 기본 위치가 설정됩니다 (그러나 모든 사이트에서 무시할 수 있습니다)
당신은 또한 볼 수 있습니다
%SystemDrive%\Windows\System32\LogFiles\HTTPERR
오류 만 나타내는 유사한 로그 파일이 포함됩니다.
답변
이것이 기본 위치를 가정하는 것보다 IIS 로그의 위치를 아는 더 쉬운 방법이라고 생각합니다.
IIS 사이트 (예 : 기본)로 이동하여 클릭하면 로깅이 활성화 된 경우 오른쪽에 “로깅”이 표시됩니다.
그것을 열면 바로 폴더가 나타납니다.
아니에요!
답변
웹을 조사 한 후이 답변을 얻었지만 IIS 로그 폴더의 하위 폴더 를 알지 못했기 때문에이 답변 을 추가하고 있습니다.
서버에 여러 웹 사이트가있는 경우 사이트의 IIS ID를 알아야합니다. IIS에서이를 얻는 쉬운 방법 은 왼쪽 패널에서 사이트 폴더를 클릭하는 것 입니다. 각 사이트의 ID가 오른쪽 패널에 표시됩니다.
ID를 알고 n 이라고 하면 해당 로그는 IIS 로그 폴더 의 W3SVC n 하위 폴더에 있습니다. 따라서 웹 사이트 ID가 4이고 IIS 로그가 기본 위치에 있으면 로그는이 폴더에 있습니다.
%SystemDrive%\inetpub\logs\LogFiles\W3SVC4
감사의 말 :
- @jishi의 대답은 기본적으로 로그의 위치를 알려줍니다.
- @Rafid의 답변은 실제 위치를 찾는 방법을 설명합니다 (기본값은 아님).
- @Bergius의 대답은 IIS를 사용하지 않고 ID를 고려하여 특정 웹 사이트의 로그 폴더 위치를 찾는 프로그래밍 방식을 제공합니다.
답변
로그 파일의 기본 위치에 대한 100 % 정답은 다음과 같습니다.
%SystemDrive%\inetpub\logs\LogFiles
예, 탐색기 주소 표시 줄에 입력하면 작동합니다.
100 % 확실하게하려면 IIS에서 웹 사이트에 대한 로깅을 확인해야합니다.
https://docs.microsoft.com/en-us/iis/get-started/whats-new-in-iis-85/enhanced-logging-for-iis85
즉
- IIS 관리자를 엽니 다.
- 연결 창에서 사이트 또는 서버를 선택하고
- 로깅을 두 번 클릭하십시오.
- 사이트의 로그 파일 위치는 디렉토리 필드에서 찾을 수 있습니다.
편집 : 아래 주석에서 Andy가 지적한 것처럼 HTTP 로깅을 사용하도록 선택한 IIS를 설치할 때 HTTP 로깅을 사용할 수 없도록해야합니다.
답변
이를 수행하는 훨씬 쉬운 방법은 다음과 같이 PowerShell을 사용하는 것입니다.
Get-Website yoursite | % { Join-Path ($_.logFile.Directory -replace '%SystemDrive%', $env:SystemDrive) "W3SVC$($_.id)" }
또는 단순히
Get-Website yoursite | % { $_.logFile.Directory, $_.id }
스스로 정보가 필요하고 뇌의 결과를 파싱하는 것을 신경 쓰지 않는다면 :).
보너스 포인트의 경우 | ii
탐색기에서 열거 나 | gci
폴더의 내용을 나열하는 첫 번째 명령에 추가하십시오 .
답변
Windows 이벤트 로그를 사용해보십시오. 유용한 정보가있을 수 있습니다