32

一般に、IIS マネージャーのウィンドウ インターフェースを介してアプリケーション設定を編集している間は、アプリケーション エイリアスを編集できないことが知られています。アプリケーションのエイリアスは灰色です (変更は許可されていません)。ただし、この記事では、コマンドライン ユーティリティ ソフトウェアを使用してこれを行う方法を見つけることができます。

http://www.foliotek.com/devblog/rename-applications-and-virtual-directories-in-iis7/

しかし、それを行う別の方法があります。この記事に書かれているように、設定ファイルを編集できます。

http://learn.iis.net/page.aspx/150/understanding-sites-applications-and-virtual-directories-on-iis-7/#Configuration

設定ファイルで、アプリケーション要素のパス属性の値 ("/Site1") を変更しただけで、それ以上は何も変更しませんでした:

<application path="/Site1" applicationPool="DefaultAppPool">
    <virtualDirectory
        path="/" 
        physicalPath="C:\Sites\Site1" />
</application>

問題は、これら 2 つの方法が同じであり、同じ結果になるかどうかがわからないことです。コマンドライン ユーティリティ (appcmd) は、アプリケーション名の名前を変更するだけでなく、追加の作業を行っているのではないでしょうか?

4

5 に答える 5

31

私は最近これをしなければなりませんでしたが、あなたが言ったように、舞台裏で他の変更が発生する可能性があるかどうかわからないため、appcmd を使用する方がよいと思います

例、

appcmd list app

APP "Default Web Site/" (applicationPool:DefaultAppPool)
APP "Default Web Site/develop" (applicationPool:mypool)
APP "Default Web Site/develop/xyz" (applicationPool:mypool)

私の場合、子から始めて名前を変更する必要がありました。そうしないと、appcmd は子サイトを見つけられません。

appcmd set app "Default Web Site/develop/xyz" -path:/B455/xyz
appcmd set app "Default Web Site/develop" -path:/B455

appcmd list app

APP "Default Web Site/" (applicationPool:DefaultAppPool)
APP "Default Web Site/B455" (applicationPool:mypool)
APP "Default Web Site/B455/xyz" (applicationPool:mypool)

注: appcmd は %windir%\system32\inetsrv の下にあります。

于 2014-09-12T15:49:12.523 に答える
3

ここで行われているのは、使用する方法に関係なく、アプリケーションパスの名前が変更されることだけです。

本当に魔法はありません。明らかに、古いパス名に依存していたWebアプリケーション内のパスは、名前を変更する必要があります。

この質問に対する私の答えは、IIS7の仮想ディレクトリとアプリケーションの仕組みを理解するのに役立つかもしれません。

ServerManagerを使用してアプリケーション内にアプリケーションを作成する

于 2011-04-17T01:01:19.020 に答える