ग्लिफ़िकन्स-हाफ़लिंग-रेगुलर के बारे में त्रुटि को कैसे दूर करें ।woff2 नहीं मिला


95

ASP.NET MVC4 बूटस्ट्रैप 3 एप्लिकेशन वेब आईडीई के लिए Microsoft Visual Studio Express 2013 से चल रहा है।

क्रोम कंसोल हमेशा त्रुटि दिखाता है

http://localhost:52216/admin/fonts/glyphicons-halflings-regular.woff2
Failed to load resource: the server responded with a status of 404 (Not Found)

यह फ़ाइल समाधान एक्सप्लोरर में फ़ॉन्ट निर्देशिका में मौजूद है। बिल्ड एक्शन "सामग्री" पर सेट है और आउटपुट निर्देशिका में कॉपी है "अन्य फ़ॉन्ट फ़ाइलों की तरह कॉपी न करें"। बूटस्ट्रैप 3 को NuGet का उपयोग करके समाधान में जोड़ा जाता है। इसे कैसे ठीक करें ताकि यह त्रुटि न हो? एप्लिकेशन ग्लिफ़िकॉन और FontAwesome आइकनों को ठीक से दिखाता है। यह त्रुटि हमेशा एप्लिकेशन स्टार्टअप पर होती है।

जवाबों:


238

यह समस्या इसलिए होती है क्योंकि IIS माइम प्रकारों के बारे में नहीं जानता woffऔर woff2फ़ाइल करता है ।

समाधान 1:

इन पंक्तियों को अपने web.config प्रोजेक्ट में जोड़ें:

 <system.webServer>
  ...
  </modules>
    <staticContent>
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
      <remove fileExtension=".woff2" />
      <mimeMap fileExtension=".woff2" mimeType="font/woff2" />
    </staticContent>

समाधान 2:

IIS प्रोजेक्ट पृष्ठ पर:

चरण 1: अपने प्रोजेक्ट IIS होम पेज पर जाएं और MIME Typesबटन पर डबल क्लिक करें:

चरण 1

चरण 2: मेनू Addसे बटन पर क्लिक करें Actions: चरण 2

चरण 3: स्क्रीन के मध्य में एक विंडो दिखाई देती है और इस विंडो में आपको समाधान 1 से दो लाइनें जोड़ने की आवश्यकता होती है: चरण 3


यह मेरे लिए हल है, लेकिन क्यों? मैं इस स्पष्टीकरण की सराहना करूंगा कि क्यों समाधान प्रदान की गई कोड की केवल नासमझ कॉपी / पेस्ट से अधिक काम करता है।
बेपेंटर

3
@Bpainter इस उत्तर में पहली पंक्ति आपको बताती है कि क्यों। माइम प्रकार एक प्रकार से संबद्ध नहीं हैं, इसलिए वे ब्राउज़र द्वारा लोड करने में विफल होते हैं। एक ब्राउज़र एक संयुक्त राष्ट्र से जुड़े माइम प्रकार फ़ाइल को लोड क्यों नहीं करेगा? मुझे लगता है कि यह एक अलग प्रश्न है जिसका उत्तर मुझे नहीं पता है।
केमिली स्वेंग

4
@ CamilleSévigny मुझे विश्वास है कि आपके प्रश्न का उत्तर यह है कि IIS केवल मान्य फ़ाइल प्रकार उपलब्ध करता है, इसलिए चूंकि यह .woff और .woff2 एक्सटेंशन को नहीं पहचानता है, यह 404 के साथ इन फ़ाइलों के लिए अनुरोधों का जवाब देता है - नहीं मिला।
ग्रुंगोंडोला

@ CamilleSévigny धन्यवाद, जब मैंने वह टिप्पणी की, तो पहली पंक्ति नहीं थी। इस तथ्य के बाद इसे संपादित किया गया था। आपकी टिप्पणी के बिना हालांकि मैंने इसे कभी नहीं देखा होगा।
Bpainter

मेरे मामले में समस्या CssRewriteUrlTransform थी जिसे मैंने बूटस्ट्रैप और फॉन्ट-भयानक के बंडल में उपयोग किया था। यदि आप उनकी सामान्य फ़ोल्डर संरचना को संरक्षित करते हैं, तो इस विकल्प का उपयोग करने की कोई आवश्यकता नहीं है।
g_brahimaj

47

मेरे मामले में, मैंने अभी-अभी यहाँ से लापता फ़ाइल डाउनलोड की है: https://gitlab.com/mailman/mailman-website/raw/a97d6b4b5b29594004e3855f1ab1222449d051111/content/fonts/glyphicons-halflings- अनियमित . woff2


7
मेरे लिए इसे हल किया। धन्यवाद। मैंने फ़ाइलों को डाउनलोड किया, और अपनी परियोजना निर्देशिका के तहत फोंट फ़ोल्डर को बचाया। "सीएसएस" फ़ोल्डर में सीएसएस फाइलें, "फोंट" फ़ोल्डर में फोंट
साइप्रस

1
कई बार समाधान बहुत सरल होते हैं, और हम इस बारे में अनजान हैं fonts:) समाधान के लिए Thnx, मैंने अपने MVC5 ऐप में अपने फ़ोल्डर में इसे याद किया
इरफ

6

यदि आपके पास केवल html तक पहुंच है, तो इसे अपने HTML में जोड़ें:

<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css" rel="stylesheet">

धन्यवाद, इस समाधान ने मेरे लिए काम किया। लेकिन, इसके अनुसार web.config में <staticContent> टैग जोड़ना - stackoverflow.com/questions/46508793/… - मेरे लिए काम नहीं किया।
BUDDHIKA

5

मेरे लिए, समस्या दुगुनी थी: सबसे पहले, आईआईएस I के संस्करण के बारे में .woff2केवल MIME प्रकार के बारे में पता नहीं था .woff। मैंने तय किया कि सर्वर स्तर पर IIS प्रबंधक का उपयोग करना, वेब ऐप स्तर पर नहीं, इसलिए प्रत्येक नए ऐप परिनियोजन के साथ सेटिंग ओवरराइड नहीं होगी। (IIS प्रबंधक के तहत, मैं MIME प्रकारों में गया, और लापता को जोड़ा .woff2, फिर अद्यतन किया .woff।)

दूसरा, और इससे भी महत्वपूर्ण बात, मैं bootstrap.cssकुछ अन्य फाइलों के साथ बंडल कर रहा था "~/bundles/css/site"। इस बीच, मेरी फ़ॉन्ट फ़ाइलें थीं "~/fonts"bootstrap.cssमें ग्लिफ़िकॉन फोंट के लिए दिखता है "../fonts", जिसका अनुवाद "~/bundles/fonts"- गलत पथ।

दूसरे शब्दों में, मेरा बंडल पथ एक निर्देशिका बहुत गहरा था। मैंने इसका नाम बदल दिया "~/bundles/siteCss", और इसके सभी संदर्भों को अद्यतन किया जो मुझे अपनी परियोजना में मिले। अब बूटस्ट्रैप ने "~/fonts"ग्लिफ़िकॉन फ़ाइलों के लिए देखा , जो काम करता था। समस्या सुलझ गयी।

इससे पहले कि मैं दूसरी समस्या ऊपर तय, कोई भी के glyphiconफ़ॉन्ट फ़ाइलें लोड हो रहा है थे। लक्षण यह था कि glyphiconपरियोजना में ग्लिफ़ के सभी उदाहरणों ने सिर्फ एक खाली बॉक्स दिखाया। हालांकि, यह लक्षण केवल वेब ऐप के तैनात संस्करणों में हुआ, न कि मेरी देव मशीन पर। मुझे अब भी यकीन नहीं है कि ऐसा क्यों था।


3

मैंने उपरोक्त सभी सुझावों की कोशिश की, लेकिन मेरा वास्तविक मुद्दा यह था कि मेरा आवेदन ऐप / फोंट में / फॉन्ट फ़ोल्डर और उसकी सामग्री (.woff आदि) की तलाश कर रहा था, लेकिन मेरा / फोंट फ़ोल्डर / ऐप के समान स्तर पर था। मैं / एप्लिकेशन के तहत / फोंट ले गया, और यह अब ठीक काम करता है। मुझे उम्मीद है कि यह किसी और को जवाब के लिए वेब पर घूमने में मदद करता है।


1

यह समस्या इसलिए होती है क्योंकि IIS को woff2 फ़ाइल माइम प्रकारों का वास्तविक स्थान नहीं मिलता है । फ़ॉन्ट-फेस का URL ठीक से सेट करें, साथ ही नीचे दिखाए गए अनुसार आपकी सीएसएस फ़ाइल में फ़ॉन्ट-परिवार को ग्लिफ़िकॉन-आधालिंग-नियमित रखें

@font-face {
font-family: 'glyphicons-halflings-regular'; 
src: url('../../../fonts/glyphicons-halflings-regular.woff2') format('woff2');}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.