У меня есть сервер IIS, на котором мало места на диске C :. Я переместил журналы W3SVC из c: \ windows \ system32 \ LogFiles на другой диск, но там также есть большая папка HTTPERR, которую я хотел бы переместить в другое место. Как мне это сделать?
У Microsoft есть подробности Вот но сводка такая:
Зайдите в реестр и внесите поправки HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Создайте строку с именем ErrorLoggingDir
и укажите это в другом месте. Не включайте HTTPERR
путь, так как служба HTTP создаст HTTPERR
в любом случае подкаталог.
Затем вы перезапускаете службу HTTP (net stop HTTP, net start HTTP), а затем запускаете все зависимые службы, например W3SVC. Служба HTTP (http.sys) не отображается в MMC служб, поэтому вы должны использовать командную строку для ее запуска / остановки.
Вот код PowerShell, который добавит ключ реестра:
$myRegKeyBase = "HKLM:\SYSTEM\CurrentControlSet\services\HTTP\Parameters"
$myRegKeyName = "ErrorLoggingDir"
$myRegKeyVal = "D:\inetpub\logs"
# Create Key property if it doesn't already exist
$myRC = New-ItemProperty $myRegKeyBase -Name $myRegKeyName -Value $myRegKeyVal -PropertyType String -ErrorAction SilentlyContinue
# Update Key property to $iisLogFileDir if it already exists
Set-ItemProperty $myRegKeyBase -Name $myRegKeyName -Value $myRegKeyVal -ErrorAction SilentlyContinue
$myProperties = Get-ItemProperty $myRegKeyBase -ErrorAction SilentlyContinue
Write-Host "regKeyPath: $($myRegKeyBase) regKeyName: $($myRegKeyName) value: $($myProperties.$myRegKeyName)"