Wie stelle ich die .NET Framework-Version, wenn New-WebAppPool mit?
-
26-09-2019 - |
Frage
Ich bin auf der Suche, um zu sehen, wie ich die IIS Powershell-Cmdlets verwenden kann New-WebAppPool die Version des .NET Framework zu verwenden, um anzugeben. Derzeit ist es standardmäßig auf v2.0, aber ich bin mit MVC, und das wird nicht funktionieren, weil das ein v4.0 Feature ist. Wir wollen jeden Standort wirklich seine eigene Application Pool haben, und es scheint, dass wir diese Pools manuell aufgrund der Unfähigkeit, sie über ein Skript zu konfigurieren, erstellen müssen. Gibt es eine Möglichkeit das?
zu automatisierenIch fürchte, die Antwort wird sein, „Sie können nicht,“ weil die Dokumentation nicht zum Setzen sie alle Parameter zu bieten scheint, und Google Hocke Aufdrehen wird; es hat mir den Eindruck, nur, dass Websites in einer Skript Weise Einrichtung akzeptabel ist, und etwas über Application Pools Konfiguration ist nur „nicht getan.“ Ich kann vielleicht nicht vorstellen, warum nicht - wenn Sie einen großen Teil des Prozesses zu automatisieren, warum können Sie den anderen großen Teil nicht automatisieren
Wer einen Einblick haben könnte, wie dies über Powershell tun mir helfen, stark würde aus.
Lösung
Mit dem WebAdministration Modul geladen dies auf einen Pool versuchen, dass Sie erstellt haben:
Set-ItemProperty IIS:\AppPools\<pool_name> managedRuntimeVersion v4.0
Andere Tipps
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
}
}
}
Sie können die Detail-Skript herunterladen von wie die IIS einstellen Application Pool angeben Version des .NET Framework