18

ASP.NET の app_offline.htm 機能を使用すると、html のみが許可され、画像は許可されません。別のサイトの別の URL を指定せずに画像を表示する方法はありますか?

4

5 に答える 5

13

はい、app_offline.htm ファイルがあるサイトからは取得できません。イメージは別の場所でホストする必要があります。

于 2008-08-28T17:03:27.160 に答える
12

別の解決策は、データURIを使用してapp_offline.htmページ内に画像を埋め込むことです。最近は広くサポートされています-詳細については以下を参照してください -http://en.wikipedia.org/wiki/Data_URI_scheme

于 2012-10-11T14:35:12.070 に答える
5

IE 8 より前のブラウザーをサポートしていない場合は、データ URI を使用していつでも画像を埋め込むことができます。

http://css-tricks.com/data-uris/

于 2014-06-19T14:20:18.667 に答える
3

もう少し作業を行う場合は、カスタム ページを簡単に作成して、アプリケーションをオフラインにすることができます。

考えられる解決策の 1 つ:

  • DisplayOfflineMessage.aspx の作成: Application["OfflineMessage"] からのオフライン メッセージを表示するためのラベルが含まれています。
  • ManageOfflineStatus.aspx: オフライン/オンライン チェックボックス、オフライン メッセージ用のテキスト領域、および更新ボタンが含まれています。更新ボタンは、2 つのアプリケーション レベル変数を設定します。1 つはメッセージ用、もう 1 つはアプリケーションがオンラインかどうかを示すフラグです。(このページは管理者のみがアクセスできるようにする必要があります)

次に Global.asax で

 public void Application_Start(object sender, EventArgs e)
 {
     Application["OfflineMessage"] = "This website is offline.";
     Application["IsOffline"] = false;
 }



 public void Application_OnBeginRequest(object sender, EventArgs e)
 {
     bool offline = Convert.ToBoolean(Application["IsOffline"]);

     if (offline) 
     {

         // TODO: allow access to DisplayOfflineMessage.aspx and ManageOfflineStatus.aspx

         // redirct requests to all other pages
         Response.Redirect("~/DisplayOfflineMessage.aspx");
     }
 }
于 2008-08-28T17:28:08.850 に答える
2

考えがある。

ASP.NETを有効にせずに、同じフォルダーを指す別のアプリケーションを作成できます。この場合、このアプリケーションによる画像へのアクセスは、app_offline.htmファイルの影響を受けません。または、そのアプリケーションが静的コンテンツのあるフォルダーを直接指すようにすると、app_offlineファイルはありません。

ただし、もちろん、このアプリケーションには、static.somedomain.comのような個別のDNS名を割り当てる必要があります。

于 2008-09-20T06:43:39.757 に答える