1

したがって、IIS で動作する ASP.NET MVC4 ページがあります。

iis スクリーンショット

唯一の問題は、静的コンテンツが提供されないことです...(css、js、...ファイル)

これは、私がすでに行ったチェックリストです。

  1. コントロール パネル内の IIS ツリー ノードの下にある [Windows の機能の有効化/無効化] ダイアログで、[静的] コンポーネントを有効にします。
  2. web.config の <system.web><httpHandlers> タグ内に <add path="*.css" verb="GET" type="System.Web.StaticFileHandler" /> を配置します。
  3. 私の <system.webServer><handlers> タグ内に <add name="CSS" path="*.css" verb="GET" type="System.Web.StaticFileHandler" preCondition="foo"/> がありますweb.config (foo は「integratedMode」または「ManagedHandler」です)。
  4. 「認証後にクライアントを偽装」権限をユーザーに追加します ( http://support.microsoft.com/kb/821546 )。
  5. ダイアログ「モジュールマッピング」で、IISに直接エントリを追加しようとしました。実際、@ lex-li は、「*」マッピングが表示されている限り、これは必要ないと言っています。これは次のとおりです。

すでに存在する静的ファイル マッピング

そして、それはまだ f**g ファイル (404) を提供しません。他に何が欠けていますか?

ログ ファイル ( C:\inetpub\logs\LogFiles\W3SVC2\u_ex140313.log) には、次の内容が表示されます。

2014-03-13 18:21:09 192.168.0.161 GET /Content/Site.css - 80 - 192.168.0.150 Mozilla/5.0+(X11;+Ubuntu;+Linux+x86_64;+rv:26.0)+Gecko/20100101+Firefox/26.0 404 0 0 15
4

1 に答える 1

0

パーミッションの問題でした。

まず、ASP.NET サイトを機能させるために、数日前に IIS 管理アプリでこれを行う必要がありました。

  • Web サイトのノードをクリックします。
  • 右側のパネルで、[基本設定...] リンクをクリックします。
  • 「...として接続」ボタンをクリックします。
  • 「特定のユーザー」を選択し、管理者権限を持つユーザーを選択します。

(上記が以下でしなければならなかったことに何らかの影響を与える場合に備えて、これについて言及します。)

ここで、問題を解決するために、フォルダーのアクセス許可を変更する必要がありました (ディスクに Web サイトを書き込んだ場所: C:\Users\knocte\Documents\Visual Studio 2012\Projects\SolutionFoo\ProjectFoo)。

  • に行くC:\Users\knocte\Documents\Visual Studio 2012\Projects\SolutionFoo
  • 「ProjectFoo」フォルダを右クリック -> プロパティ -> セキュリティ。
  • 「編集...」ボタンをクリックします。
  • 「追加...」ボタンをクリックします。
  • 「IIS_IUSRS」と書き、「名前の確認」をクリック。
  • 「同意する」を何度もクリック。

ブラウザでページを更新すると、静的ファイルが機能するはずです。

(Temporary ASP.NET Filesシステム フォルダで問題が発生する場合もあります。その場合は、こちらを参照してください。)

于 2014-03-13T19:01:56.100 に答える