9

サポートしているアプリのデプロイ用にバージョン管理を実装する必要があります。サイトをコピーしてc:\ inetpub \ wwwroot \ app_v2と言い、仮想ディレクトリをc:\ inetpub \ wwwroot\app_v1から切り替えることができます。

コマンドラインからIISの仮想ディレクトリの物理パスを変更する方法はありますか?

編集:

IIS7では、appcmdを使用して、このページのこの形式を使用して仮想ディレクトリの物理パスを設定できることがわかりました。仮想ディレクトリコンテンツの物理パスを変更します。もっと普遍的なものを探していました...

appcmd set vdir /vdir.name:string /physicalPath:string

ただし、IIS6に相当するものはないようです。

4

2 に答える 2

6

はい、WMI スクリプトを見てください。

http://learn.iis.net/page.aspx/163/managing-applications-and-application-pools-on-iis-7-with-wmi/

http://www.aspfree.com/c/a/IIS/IIS-60-Getting-Information-Using-WMI/3/

ニック

于 2009-03-19T18:45:47.987 に答える
3

今日も同じ質問がありました。「コマンド ラインを使用して IIS6 vdir へのパスを変更するにはどうすればよいですか?」

WMI スクリプトを使用する方法があったので、このために作成した vbs を投稿することにしました。

使用するには、vdir 名とパスを渡すだけです。したがって、「Web」という vdir があり、パスを「d:\theNewPath\to\Website」に変更したい場合は、コマンド プロンプトで次のコマンドを実行します。

updateVDirPath web d:\theNewPath\to\Website

また、Vdir のパスを確認するには、vdir 名を渡します。

updateVDirPath web

updateVDirPath.vbs の内容はこちら

If WScript.Arguments.Count = 0 or WScript.Arguments.Count > 2  Then
    WScript.Echo "To check the vDirs path, call updateVDirPath <vDir>" & vbCrLf & "To update the vDir's path, call updateVDirPath <vDir> <newPath>"
Else
    set providerObj = GetObject("winmgmts://localhost/root/MicrosoftIISv2") 
    set IIsWebVirtualDirSettingObj = providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT/" & WScript.Arguments(0) & "'") 

    If WScript.Arguments.Count = 1 Then
        WScript.Echo "Current path is: " & IIsWebVirtualDirSettingObj.Path
    Else
        IIsWebVirtualDirSettingObj.Path = WScript.Arguments(1)
        IIsWebVirtualDirSettingObj.Put_ () 
    End If
End If
于 2012-06-22T20:39:44.483 に答える