2008-12-01 7 views
6

Ich versuche, das Ausgangsverzeichnis einer Site mithilfe von Powershell zu ändern. Das ist, was ich bisher, aber es ist nicht die Änderungen zu speichern ...Ändern des IIS6-Site-Home-Verzeichnisses mit Powershell

$server = "localhost" 
$siteName = "mysite" 
$iis = [ADSI]"IIS://$server/W3SVC" 
$site = $iis.psbase.children | where { $_.keyType -eq "IIsWebServer" 
     -AND $_.ServerComment -eq $siteName } 
$path = [adsi]($site.psbase.path+"/ROOT") 

$path.path = "D:\Sites\mysite\www2" 
$site.psbase.CommitChanges() 

Antwort

12
$server = "localhost" 
$siteName = "mysite" 
$iis = [ADSI]"IIS://$server/W3SVC" 
$site = $iis.psbase.children | where { $_.keyType -eq "IIsWebServer" 
     -AND $_.ServerComment -eq $siteName } 
$path = [adsi]($site.psbase.path+"/ROOT") 
$path.path 
$path.psbase.properties.path[0] = "D:\Sites\$siteName\www2" 
$path.path 
$path.psbase.CommitChanges() 
+1

Wenn ich dieses Skript ausführen (auf Vista Business 64-bit), erhalte ich eine „Zugriff verweigert“ Fehler beim Aufruf von $ iis.psbase. Liegt es daran, dass ich IIS7 anstelle von 6 verwende? Ich entwickle unter Vista, aber die Skripte laufen auf 2K3 Server. –

+0

Hallo David, ich denke, Sie können die IIS6 Metabase Compatibility Rolle hinzufügen, um dies mit IIS7 –

+2

Powershell-Skript für Null-Downtime-Bereitstellung mit ARR in einem einzigen Rechner: https://github.com/yosoyadri/IIS-ARR-Zero-Downtime /blob/master/DeployLocalFarm.ps1 – Yosoyadri