2011-11-08 17 views
8

मुझे ऐपहॉर्बर पर अपना एप्लिकेशन होस्ट करते समय समस्या का सामना करना पड़ रहा है। मैं .net MVC 3 पर एक बुनियादी आवेदन किया है .. इस आवेदन में मैं @ फॉन्ट-फेस संपत्ति कस्टम फोंट में सामग्री प्रदर्शित करने के लिए प्रयोग किया जाता है:@ फ़ॉन्ट-फेस लोकलहोस्ट पर ठीक काम कर रहा है लेकिन ऐपहार्बर में नहीं

@font-face { 
font-family: facefont; 
src: url("raleway_thin.otf"); 
} 
body {  
font-size: .85em; 
font-family: "facefont", Verdana, Helvetica, Sans-Serif; 
margin: 0; 
padding: 0; 
color: #696969; 
} 

जब मैं अपने विकास सर्वर के माध्यम से इस एप्लिकेशन को चलाने काम में loaclhost में कस्टम फ़ॉन्ट में दिखाए जा रहे सामग्री के साथ सभी ठीक काम करता है। लेकिन जब मैं यहाँ AppHarbor पर मेरे webapp धकेल दिया:

testapp over AppHarbor

यह कोई है कि मैं .css में उपयोग किया है कस्टम फ़ॉन्ट में सामग्री दिखा रहा है। मैं इसके बारे में उलझन में हूं क्योंकि दोनों को देखने के लिए एक ही ब्राउज़र (क्रोम 15.0) का उपयोग कर रहा हूं लेकिन वे अलग-अलग परिणाम दे रहे हैं।

कृपया मदद करते हैं।


मैं सिर्फ बाहर काम किया इस फ़ॉन्ट फाइलों के साथ ही हो रहा है [* .otf, * .ttf] .. मैं एक ही फ़ोल्डर में एक छवि डाल दिया और इसके पूरी तरह से जोड़ दिया गया है, लेकिन फिर से यह प्राप्त करने में विफल फ़ॉन्ट फ़ाइल और इसके ऊपर 404 प्रदर्शित।


इसके अलावा को विन्यस्त Mimetypes के साथ किया:

<staticContent> 
     <mimeMap fileExtension=".otf" mimeType="font/otf" /> 
     <mimeMap fileExtension=".ttf" mimeType="application/octet-stream" /> 
    </staticContent> 
+0

मैं Firebug का उपयोग कर अपने paeg की जाँच की, फ़ॉन्ट फाइल करने के लिए ठीक से नहीं किया गया जोड़ दिए है, अपने पथ जाँच लगता है। – Kyle

+0

@Kyle Sevenoaks: Thnks जवाब देने के फादर, लेकिन इसकी स्थानीय होस्ट यहाँ ठीक काम कर रहा अपने ब्राउज़र में? और पथ स्टाइल शीट के रूप में सही लगता है और फ़ॉन्ट फ़ाइल एक ही डीआईआर में हैं। – Maven

+0

फायरबग या क्रोम के डेवलपर टूल में चेक करें। Firebug का कहना है वहाँ त्रुटियों की 400-500 रेंज में एक ऐसा क्षेत्र है, आमतौर पर एक 404. – Kyle

उत्तर

7

आपका स्टाइलशीट उपलब्ध नहीं है अपने पृष्ठ के संदर्भ में यह। इस यूआरएल अप में कार्य करता है एक 500: http://testapp-216.apphb.com/Content/Site.css

आप सत्यापित करना चाहिए कि AppHarbor प्रासंगिक .css और फ़ॉन्ट फ़ाइलों तैनात। यह AppHarbor से बिल्ड आउटपुट पैकेज डाउनलोड करके और इसकी सामग्री की जांच करके आसानी से किया जाता है। यदि यह वहां नहीं है, तो आपको प्रोजेक्ट फ़ाइल संदर्भ में "सामग्री बनाएं" को "सामग्री" पर सेट करने की आवश्यकता है।

यह भी महत्वपूर्ण है कि Mimetypes ठीक से कॉन्फ़िगर किया गया है।

(अस्वीकरण AppHarbor की, मैं कर रहा हूँ सह-संस्थापक)

+0

ओह यह नवीनतम निर्माण के साथ एक नई समस्या है, अब यह किसी भी .css और .js फ़ाइलों को पहचान नहीं रहा है .. मुझे इसे ठीक करने के लिए कुछ करने की कोशिश करें! – Maven

+0

सीएसएस समस्या ने अब इसे हल किया है, लेकिन फ़ॉन्ट समस्या अभी भी मौजूद है। कृपया एक नज़र डालें। – Maven

+0

क्या आपने सत्यापित किया है कि फ़ॉन्ट फ़ाइल वास्तव में AppHarbor द्वारा सर्वर पर तैनात की गई है? – friism

4

समस्या यह है कि फ़ॉन्ट फ़ाइल .otf AppHarbor सर्वर से नहीं परोसा जाता है क्योंकि इसमें कोई माइम के लिए कॉन्फ़िगर प्रकार को निर्दिष्ट करते हैं कि यह कैसे की सेवा के लिए है।

यहाँ देखें Web.config का उपयोग कर MIME प्रकार जोड़ने के बारे में: http://www.iis.net/ConfigReference/system.webServer/staticContent/mimeMap

MIME प्रकार आप विन्यस्त करने की जरूरत है font/otf

कुछ की तरह:

<mimeMap fileExtension=".otf" mimeType="font/otf" /> 
+0

Thnx, क्या आप मुझे एक लिल बता सकते हैं कि मैं एमआईएमई प्रकार को कैसे कॉन्फ़िगर कर सकता हूं यह निर्दिष्ट करने के लिए कि इसे कैसे पेश किया जाए? – Maven

+0

हां। मैंने अपना जवाब – Variant

+0

अपडेट किया है कोई भाग्य नहीं! Ive ने web.config में किए गए परिवर्तनों के साथ अपने प्रश्नों को अपडेट किया लेकिन समस्या अभी भी वहां है। – Maven

1

आपका स्टाइलशीट में स्थित है/सामग्री/Site.css और आप इस फ़ाइल में "raleway_thin.otf" के साथ अपने फ़ॉन्ट्स का संदर्भ दे रहे हैं जो सीएसएस फ़ाइल के सापेक्ष है। इसलिए यह इस फ़ाइल पथ मौजूद होने की उम्मीद कर रहा है /Content/raleway_thin.otf

मैं appharbour से परिचित नहीं हूं, लेकिन सुनिश्चित करें कि आपकी सभी फ़ाइलें केस संवेदनशील हैं (यानी विंडोज़ को यूनिक्स/लिनक्स के मुद्दों का कारण बनती है)।

अन्यथा, क्या वेब सर्वर कुछ फ़ाइल एक्सटेंशन को निर्देशिका में लोड होने से रोकता है। अपाचे पर आप यह बता सकते हैं कि निर्देशिका में किस फ़ाइल प्रकार का उपयोग करने की अनुमति है।

कहा करने के बाद कि 404 अपने URL http://testapp-216.apphb.com/Content/raleway_thin.otf का मतलब स्थान पर मौजूद नहीं है

+0

हाँ फ़ॉन्ट उसी डीआईआर 'कंटेंट' में था, अब कुछ ऐसा देखने के लिए इसे बदल दिया गया है जो अभी भी अटक गया है। 'src: url (" font/raleway_thin.otf ");' – Maven

1

सुनिश्चित करें कि फ़ाइल बिल्ड कार्रवाई दृश्य स्टूडियो में सामग्री पर सेट है, अन्य बुद्धिमान यह set build action to content

लौटाया नहीं जाएगा

AppHarbor

19

पर मेरे लिए काम किया आदेश मिल मैं दो काम करने के लिए किया था Appharbor करने के लिए ".woff" प्रारूप फोंट की तैनाती में:

1: यह (के रूप में @Korayem से ऊपर वर्णित है)
2 "का निर्माण" है संपत्ति "सामग्री" के लिए स्थापित किया गया था सुनिश्चित करने, मेरे दृश्य स्टूडियो परियोजना में फ़ॉन्ट शामिल करें:

<system.webServer> 
    <staticContent> 
     <remove fileExtension=".woff"/> 
     <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" /> 
    </staticContent> 
</system.webServer> 
: Web.config करने के लिए config पालन करें
+0

यह काम किया। धन्यवाद। – DarthVader