development

New-WebAppPool을 사용할 때 .NET Framework 버전을 어떻게 설정합니까?

big-blog 2020. 12. 8. 18:52
반응형

New-WebAppPool을 사용할 때 .NET Framework 버전을 어떻게 설정합니까?


IIS PowerShell Cmdlet New-WebAppPool 을 사용하여 사용할 .NET Framework의 버전을 지정하는 방법을 찾고 있습니다. 현재는 v2.0으로 기본 설정되어 있지만 MVC를 사용하고 있으며 v4.0 기능이기 때문에 작동하지 않습니다. 우리는 정말로 각 사이트에 자체 응용 프로그램 풀을 갖기를 원하며 스크립트를 통해 구성 할 수 없기 때문에 이러한 풀을 수동으로 만들어야하는 것 같습니다. 이것을 자동화하는 방법이 있습니까?

문서 가 설정을위한 매개 변수를 제공하지 않는 것 같고 Google이 스쿼트를 시작하고 있기 때문에 대답은 "할 수 없습니다"가 될 것입니다 . 스크립팅 된 방식으로 사이트를 설정하는 것만 허용되고 응용 프로그램 풀 구성에 대한 작업이 "완료되지 않았습니다"라는 인상을 받았습니다. 왜 안되는지 상상할 수 없습니다. 프로세스의 한 주요 부분을 자동화하는 경우 다른 주요 부분을 자동화 할 수없는 이유는 무엇입니까?

PowerShell을 통해이 작업을 수행하는 방법에 대한 통찰력이있는 사람이라면 누구나 나를 크게 도울 것입니다.


WebAdministration 모듈이로드 된 상태에서 생성 한 풀에서 다음을 시도하십시오.

Set-ItemProperty IIS:\AppPools\<pool_name> managedRuntimeVersion v4.0

Import-Module WebAdministration
#Get all web sites
dir IIS:\Sites | ForEach-Object {
  #Go to the app pools root
  cd IIS:\AppPools\
  if (!(Test-Path $_.Name -pathType container))
  {
    #Create the app pool and set .net framework version
    $appPool = New-Item $_.Name
    $appPool | Set-ItemProperty -Name "managedRuntimeVersion" -Value $IISAppPoolDotNetVersion
    #Go to the web sites root
    cd IIS:\Sites\
    $iisApp = Get-Item $_.Name
    $iisApp | Set-ItemProperty -Name "applicationPool" -Value $_.Name
  }
  else {
    $dotNetVersion = (Get-ItemProperty $_.Name managedRuntimeVersion).Value
    if ($dotNetVersion -ne $IISAppPoolDotNetVersion){
        #Get the app pool and set .net framework version
        $appPool = Get-Item $_.Name
        $appPool | Set-ItemProperty -Name "managedRuntimeVersion" -Value $IISAppPoolDotNetVersion       
    } 
  }
} 

.NET Framework의 버전을 지정하기 위해 IIS 응용 프로그램 풀을 설정하는 방법 에서 세부 스크립트를 다운로드 할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/4229082/how-do-i-set-the-net-framework-version-when-using-new-webapppool

반응형