sourcetip

어떻게 설정합니까?New-WebAppPool 사용 시 NET Framework 버전은 무엇입니까?

fileupload 2023. 8. 26. 12:10
반응형

어떻게 설정합니까?New-WebAppPool 사용 시 NET Framework 버전은 무엇입니까?

IIS PowerShell Cmdlet New-WebAppPool을 사용하여 의 버전을 지정하는 방법을 알아보고 있습니다.사용할 NET Framework.현재 기본적으로 v2.0으로 설정되어 있지만 MVC를 사용하고 있으며 v4.0 기능이기 때문에 작동하지 않습니다.각 사이트에 고유한 애플리케이션 풀이 있기를 원하며 스크립트를 통해 풀을 구성할 수 없기 때문에 이러한 풀을 수동으로 생성해야 합니다.이것을 자동화할 수 있는 방법이 있습니까?

설명서에 설정에 대한 매개 변수가 없는 것처럼 보이고 Google이 쪼그려 앉아 있기 때문에 "할 수 없습니다."라는 대답이 나올 것 같습니다. 이는 스크립트 방식으로 사이트를 설정하는 것만 허용되고 애플리케이션 풀을 구성하는 것은 "완료되지 않았습니다."라는 인상을 줍니다.프로세스의 주요 부분 중 하나를 자동화하는 경우에는 다른 주요 부분을 자동화하지 못하는 이유가 무엇인지 상상할 수 없습니다.

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

웹 관리 모듈이 로드된 상태에서 만든 풀에서 다음을 시도합니다.

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

런타임을 지정하지 않으려는 경우 다음과 같이 도움이 되었습니다.

$newAppPool = New-WebAppPool -Name $AppPoolName 
$newAppPool.managedRuntimeVersion = ""
$newAppPool | Set-Item
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       
    } 
  }
} 

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

또는 New-WebAppPool cmdlet의 반환 값에 이 값을 설정할 수 있습니다.이 방법은 다른 속성도 변경하려는 경우 유용할 수 있습니다.

v4.0 풀의 경우 다음과 같습니다.

Import-Module WebAdministration
$appPool = New-WebAppPool -Name Pool1
$appPool.managedRuntimeVersion = "v4.0"
$appPool | Set-Item

관리되는 코드 없음'으로 설정하려면 다음을 사용합니다.

Import-Module WebAdministration
$appPool = New-WebAppPool -Name Pool2
$appPool.managedRuntimeVersion = ""
$appPool | Set-Item

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

반응형