web-dev-qa-db-ja.com

IIS 7.5:デフォルトのドキュメントが異なる仮想ディレクトリ

さまざまなプロジェクトの仮想ディレクトリを使用したWebアプリのIIS)には、一般的な設定があります。

  • www.webapp.com(ウェブサイト)
    • project1(仮想ディレクトリ)
    • project2(仮想ディレクトリ)
    • project3(仮想ディレクトリ)

Webappには、すべての仮想dirと同様に、デフォルトのドキュメントとしてlogin.aspxがあります。ここで、別のデフォルトドキュメント(index.aspx)が必要ですwww.webapp.com Webサイトのみ。仮想ディレクトリは引き続きlogin.aspxを使用し、それだけを使用します。

編集:すべての仮想ディレクトリは同じ物理ディレクトリを指します。 www.webapp.comのデフォルトのドキュメントを変更すると、基盤となるすべての仮想ディレクトリも変更されます。

これは、以前はIIS 6で簡単でしたが、IIS 7.5では実装に失敗しました。

ロケーションタグを追加してapplicationhost.configを変更する必要があると思いますが、開始方法がわかりません。誰かが私を正しい方向に向けることができますか?

ありがとう! Stijn

1
Stijn Van Loo

これを行うには、ApplicationHost.configファイルを変更する必要があります。ファイルの場所は現在、%windir%\ system32\inetsrv\configディレクトリにあります。

ドキュメントの最後にある[場所]セクションは、アプリのデフォルトドキュメントに応じて変更する必要があります。例えば-

<location path="Default Web Site/App">
    <system.webServer>
        <defaultDocument enabled="true">
            <files>
                <clear />
                <add value="Login.aspx" />
            </files>
        </defaultDocument>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</location>


<location path="Default Web Site/App/VApp2">
    <system.webServer>
        <defaultDocument enabled="true">
            <files>
                <clear />
                <add value="LoginPage2.aspx" />
            </files>
        </defaultDocument>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</location>
1
XpertSiji

ええ、これを設定する最も簡単な(読む:cheat-i-est)方法は次のとおりです:

機能の委任を開き、サイトの既定のドキュメントモジュールの委任を無効にします(または読み取り専用にします)。

これが完了すると、GUIは、構成した委任設定よりも低いレベルで<location>タグを作成します。

0
TristanK

たぶん私はあなたの問題を理解していませんでしたが、それは私には些細なことのようです。

インターネットインフォメーションサービスマネージャーを開き、仮想ディレクトリを選択します(ダブルクリック)。 IISセクションで、[既定のドキュメント]を開き、既定のドキュメントを設定します(または一部を削除します)。

すべての仮想ディレクトリに対してこの手順を繰り返します。

更新:

質問:(一部の)仮想ディレクトリは同じ物理ディレクトリを指していますか? IISは、物理ディレクトリのweb.configファイルに情報を保存します。これが問題である可能性があります。

回避策:仮想ディレクトリの要求をリダイレクトするロジックを作成します。または、物理ディレクトリのコピーを作成して、web.configファイルを個別に設定できるようにします。

0
splattne

1)-> IIS->仮想ディレクトリ(ダブルクリック)->デフォルトドキュメントをクリック->追加ボタンをクリック-> html、aspx、.. etcを入力For(example index.html、k.html)

2)物理ディレクトリに移動します->(メモ帳++)でweb.configファイルを開きます

3)すべての行を削除します

4)この行を追加します

    <?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <location path="XX">
       <system.webServer>
       <defaultDocument enabled="false">
         <files>
            <clear />
              <add value="XXX.html" />
         </files>
        </defaultDocument>
    </system.webServer>
    </location>
    </configuration>

5)いくつかの変更を編集する

<location path="XX">

XX->仮想ディレクトリ名

 <add value="XXX.html" />

XXX.html->拡張子付きのページ名

0
sri kumar