none
[VS2010] 開発サーバで、既定のコンテンツページの動作がdefaultDocumentでの設定順に選択されない RRS feed

  • 質問

  • VisualStudio2010でASP.NETのWebサイトを開発している際の現象について質問です。
    (先にIISのフォーラムで質問したところ、こちらに誘導していただきました)

    Web.configにて以下のように設定しています:

    <defaultDocument enabled="true">
     <files>
      <add value="Default.htm"/>
      <add value="Default2.aspx"/>
      <add value="Default.aspx"/>    
     </files>
    </defaultDocument>
    そして、フォルダ配下には以下のようにページを配置しています:

    • Directory1
      • Default.aspx
    • Directory2
      • Default.aspx
      • Default2.aspx

    このとき、期待する動作としては

    1. Directory1 にアクセスすると Default.aspx が表示され、
    2. Directory2 にアクセスすると Default2.aspx が表示される。

    となってほしいのですが、Visual Studio 開発サーバ (WebDev.WebServer.EXE) の挙動では Directory1、Directory2 とも Default.aspx が表示されてしまいます。

    IISの設定リファレンス( http://www.iis.net/ConfigReference/system.webServer/defaultDocument  (英語)) ではdefaultDocument に設定した順に既定のページが選択されるように記述されていますが、設定方法に何か誤りや抜けがあるのでしょうか。それとも、開発サーバはこの部分での互換性がないのでしょうか。


    INOUE Hiroyuki
    2011年3月17日 11:32

回答

  • Visual Studio 開発サーバは IIS6 相当です。貼られたURLのCompatibilityの項を見るとわかりますが、IIS6では設定方法が異なります。

    Visual Studio 2010 SP1ではIISExpressという新しい開発サーバーが使用できるようになりますが、こちらならIIS7.5相当なので、書かれたweb.configを解釈し意図通りの動作をすると思います。

    2011年3月18日 5:50

すべての返信

  • Visual Studio 開発サーバは IIS6 相当です。貼られたURLのCompatibilityの項を見るとわかりますが、IIS6では設定方法が異なります。

    Visual Studio 2010 SP1ではIISExpressという新しい開発サーバーが使用できるようになりますが、こちらならIIS7.5相当なので、書かれたweb.configを解釈し意図通りの動作をすると思います。

    2011年3月18日 5:50
  • なるほど、開発サーバは IIS7.x 互換ではなかったのですね。納得です。

    VS2010 SP1 を適用できる環境が整い次第、確認したいと思います。情報ありがとうございました。


    INOUE Hiroyuki
    2011年3月28日 1:26