هل هناك طريقة لعرض الصور باستخدام ASP.NET وapp_offline.htm؟

StackOverflow https://stackoverflow.com/questions/32715

  •  09-06-2019
  •  | 
  •  

سؤال

عند استخدام ميزة app_offline.htm الخاصة بـ ASP.NET، فإنها تسمح فقط بـ html، ولكن لا تسمح بالصور.هل هناك طريقة لعرض الصور دون الحاجة إلى توجيههم إلى عنوان URL مختلف على موقع آخر?

هل كانت مفيدة؟

المحلول

نعم، لا يمكن أن يأتي من الموقع الذي يحتوي على الملف app_offline.htm.يجب أن تتم استضافة الصورة في مكان آخر.

نصائح أخرى

الحل الآخر هو تضمين الصورة داخل صفحة app_offline.htm باستخدام معرف URI للبيانات.هناك دعم واسع لهذا الأمر هذه الأيام - راجع ما يلي للحصول على التفاصيل الكاملة -http://en.wikipedia.org/wiki/Data_URI_scheme

إذا كنت على استعداد للقيام بالمزيد من العمل، فيمكنك بسهولة إنشاء صفحة مخصصة لجعل التطبيق غير متصل بالإنترنت.

أحد الحلول الممكنة:

  • إنشاء DisplayOfflineMessage.aspx:يحتوي على تسمية لعرض رسالتك غير المتصلة بالإنترنت من التطبيق ["OfflineMessage"].
  • ManageOfflineStatus.aspx:يحتوي على مربع اختيار غير متصل/متصل ومنطقة نصية للرسائل غير المتصلة وزر تحديث.يقوم زر التحديث بتعيين متغيرين على مستوى التطبيق، أحدهما للرسالة وعلامة توضح ما إذا كان التطبيق متصلاً أم لا.(يجب أن تكون هذه الصفحة متاحة للمسؤولين فقط)

ثم في 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");
     }
 }

إذا كنت لا تدعم المتصفحات السابقة لـ IE 8، فيمكنك دائمًا تضمين الصور باستخدام معرف URI للبيانات.

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

لدي فكرة.

يمكنك إنشاء تطبيق منفصل، يشير إلى نفس المجلد، دون تمكين ASP.NET.ثم لن يتأثر الوصول إلى الصور بواسطة هذا التطبيق بملف app_offline.htm.أو، قم بتوجيه هذا التطبيق مباشرة إلى المجلد الذي يحتوي على محتوى ثابت، ولن يكون هناك أي ملفات app_offline.

ولكن، بالطبع، تحتاج إلى تعيين اسم DNS منفصل لهذا التطبيق، مثل static.somedomain.com.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top