ASP .NET MVC - الصور التي لا تظهر في بناء المنشور

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

  •  06-09-2019
  •  | 
  •  

سؤال

أقوم بتطوير تطبيق ASP .NET MVC وعلى جهاز Dev الخاص بي، يعمل التطبيق كما هو متوقع، والأهم من ذلك، والأهم من ذلك، يتم عرض الصور المذكورة في ملف CSS بشكل صحيح أيضا.

ومع ذلك، عندما نشر هذا التطبيق إلى خادم اختبار، يعمل تطبيق الويب بشكل جيد، ولكن لا تظهر الصور.

إذا قمت بتعديل عنوان URL في IE عند اختبار الإخراج من خادم الاختبار، فسيتم إرجاع الصورة، مما يعني أن الملف موجود ولكنه لن يظهر فقط داخل صفحة العرض عند استخدام الموقع بشكل طبيعي.

لقد حاولت خوادم بديلة أيضا، ولكن النتيجة هي نفسها.

للتأكيد، إليك خط من صفحة CSS المرجعية على الصورة ...

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

أي اقتراحات؟

هتافات

بريت

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

المحلول

عناوين URL غير صحيحة، من المحتمل أن تكون في حقيقة أنك تنشر في مجلد فرعي ولذا فإنها لم تعد في جذر الخادم. أنا عادة استخدام Url.Content( "~/Content/Images/..." ) لبناء عنوان URL بدلا من ترميزه الصعب. بهذه الطريقة سوف يأخذ في الاعتبار الطرق عند بناء المسار.

مثال:

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

نصائح أخرى

كان لدي نفس المشكلة، لكنني وجدت السبب في إجبار المصادقة على مجلد المحتويات.

عند عدم تسجيل المستخدم حتى الآن، يتم تصنيفها على أنها مصادقة مجهولة. في IIS7 (وهذا ما أستخدمه، تخمين ذلك هو نفسه في IIS6) تحتاج إلى فتح نافذة المصادقة في عرض الميزات. ثم قم بتحرير المصادقة المجهولة، لاستخدام هوية تجمع التطبيقات الخاصة بك، أو الإعداد الافتراضي، فقط تأكد من أن المستخدم لديه أذونات للقراءة في هذا المجلد.

أن إصلاحه بالنسبة لي، آمل أن يعمل لك.

المسارات النسبية المحتملة مخطئين ... ممكن أنهم مخطئين لملف CSS نفسه. يمكنك استخدام Firebug لمعرفة ما إذا كان CSS محملا بشكل صحيح، ثم يمكنك فحص طلب الصورة، غالبا في مثل هذه الحالات سترى عناصر حمراء (خطأ). هذا يمكن أن يساعد في توطين المشكلة.

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