Windows Azure の Development Fabric で CSS が適用されない

今日は Azure ネタで一つポストします。

来月 11 月 17 日から LA で開催予定の PDC09 (Professional Developers Conference 2009)
でラウンチ予定の Windows Azure ですが、みなさんすでにお試しになられている方も多いかと思います。

私も、いろいろと試していますが、その際にちょこっとハマったネタを一つ。

Visual Studio に Windows Azure Tools for Microsoft Visual Studio をインストールして、Cloud Service のプロジェクトを作ります。
そして、Windows Azure に Publish する前に Development Fabric 上で実行して試しますが、その際に特定の環境で CSS が適用されない現象がでていました。

CSS_Dosent_work 
図 CSS が正しくロードされていない ASP.NET MVC アプリケーション

このような現象が出たら、以下をお試しください。

  1. [コントロールパネル]ー[プログラム]ー[Windows の機能の有効化または無効化] を開く
  2. [インターネット インフォメーション サービス]ー[World Wide Web サービス]ー[HTTP 共通機能]の [静的コンテンツ] をチェック

Windows_Features 
図 HTTP 共通機能ー静的コンテンツ

これで、正しく CSS (や JavaScript )が読み込まれると思います。

ちなみに、この[静的コンテンツ] のチェックを ON にすると、IIS に下記のネイティブモジュールが追加されます。

StaticFileModule ----> %windir%\System32\inetsrv\static.dll

このモジュールが追加されているかどうかでも [静的コンテンツ] が有効になっているか否かを確認できます。

IIS_StaticFileModule 図 StaticFileModule

なお、この内容は下記の MSDN Forum (US) のスレッドにも書かれています。

CSS ignored when debugging
http://social.msdn.microsoft.com/Forums/en-US/windowsazure/thread/a5b7e7a1-f2d6-4bd6-83ed-ff0a4bc35b93

CSS stylesheet not found
http://social.msdn.microsoft.com/Forums/en-CA/windowsazure/thread/04af7e10-b66a-4206-b8a3-742ed60097f4

ご参考までに。