1

私はASP.NET MVC 5アプリケーションを持っています。アプリケーションのルートにはfontsというフォルダがあります。 (これは、新しいアプリケーションを作成するときにVS 2017によってデフォルトで作成されたものです) enter image description hereIISがブートストラップフォントを間違った場所に探しています

私はアプリケーションをVisual Studioでローカルに実行するとすべて正常に動作します。パスが変更された理由が、私はIISにデプロイし、glyphiconsが使用されて任意のページを参照するとき、私は

enter image description here

(フィドラーで)以下のエラーを参照してください、私は知らないのですか? /fontsフォルダーの下でフォントを検索する代わりに、/Content/fontsフォルダーの下にあります。

+0

あなたが展開するときに束ねる使用していますか?そうであれば、あなたのバンドルパスは相対的なのであなたのCSSパスをマックするかもしれません。バンドルに 'CssRewriteUrlTransform()'関数を渡すと、 'new StyleBundle("〜/ Css/Site ")のような正しい場所を指し示すようにURLを書き直す必要があります。 PickDateThemes/default.css "、新しいCssRewriteUrlTransform())' – Tommy

答えて

0

CSSファイルのパスは相対パスであるため、組み込みバンドルメカニズムを使用すると、パスが不正な場所に解決される可能性があります。この問題を解決するには、バンドル内の各CSSファイルにパラメータを追加して渡します。このパラメータは圧縮されたCSSのパスを書き換えて、最終的に画像やフォントなどのファイルの正しいパスを指定します。 (私の現在のプロジェクトの1から)

var siteCss = new StyleBundle("~/Css/Site") 
      .Include("~/Content/PickDateThemes/default.css", new CssRewriteUrlTransform()) 
      .Include("~/Content/PickDateThemes/default.date.css", new CssRewriteUrlTransform()) 
      .Include("~/Content/PickDateThemes/default.time.css", new CssRewriteUrlTransform()) 
      .Include("~/Content/app.css", new CssRewriteUrlTransform()) 
      .Include("~/Content/DataTables/css/dataTables.foundation.css", new CssRewriteUrlTransform()); 
関連する問題