質問

私は、ASP。ネットMVCアプリケーションを開発していますし、期待されると、もっと重要なのは、CSSファイルに記載されたイメージがあまりにも正しく表示されているように私のdevのマシン上で、アプリケーションが実行されます。

私はテストサーバーにこのアプリケーションを公開するときに

しかし、ウェブアプリは罰金動作しますが、画像が表示されません。

テストサーバーからの出力をテストするとき、私はIEでURLを変更した場合、画像はファイルが存在することを意味し、返されますが、通常は、サイトを使用している場合、それは単にビューページ内に表示されなくなります。

私も代替サーバを試してみましたが、結果は同じです。

を確認するため、ここでは画像を参照するCSSページからラインだ...

background-image: url('/Content/Images/Logo/myLogo.jpg');

任意の提案ですか?

乾杯

ブレット

役に立ちましたか?

解決

URLが原因サーバのルートではもはやあなたがサブフォルダに公開しているので、彼らはあるという事実にありそう、正しくありません。私は通常、それをハードコーディングするのではなく、URLを構築するためにUrl.Content( "~/Content/Images/..." )を使用しています。パスを構築するときその方法は、それが考慮にルートを取るでしょう。

例:

 <img src='<%= Url.Content( "~/Content/Images/banner.jpg" ) %>' alt="Banner" />

他のヒント

私は同じ問題があったが、私はそれがContentsフォルダに認証を強制された理由を見つけます。

ユーザがまだログインしていない場合、

、それらは匿名認証に分類されます。 (私はそれがIIS6で同じである推測し、使用していますものです)IIS7では、機能ビューで認証ウィンドウを開く必要があります。それからちょうど、ユーザーがそのフォルダに読み取るための権限を持っていることを確認して、あなたのアプリケーションプールID、またはデフォルトのいずれかを使用して、匿名認証を編集します。

それはそれはあなたのために働く願って、私のためにそれを修正します。

可能な相対パスは、彼らはCSSファイル自体のために間違っている可能性が...間違っています。あなたは赤(エラー)の項目が表示されますこのような状況では、多くの場合、あなたは画像要求を調べることができ、CSSが正しくロードされてかどうかを確認するために放火犯を使用することができます。これは、問題をローカライズするのに役立つ可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top