2015-10-07 13 views
9

मैंने इस मुद्दे के लिए स्टैक ओवरफ्लो/गीथब पर कई समाधानों की कोशिश की लेकिन मैं इसे काम नहीं कर सकता।रेल संपत्तियां क्लाउडफ़्रंट fontawesome CORS

मैं font-awesome-rails का उपयोग कर रहा हूं और मैं उत्पादन के लिए अपनी संपत्ति का प्रीकंपाइल करता हूं। मैं अपने उत्पादन config में मेरी संपत्ति के लिए CloudFront निर्धारित किया है:

config.action_controller.asset_host = "https://XXXX.cloudfront.net" 

जब मैं (क्रोम/फ़ायरफ़ॉक्स से क्योंकि सफारी CORS साथ ठीक है) एक पृष्ठ लोड मैं इस आम त्रुटि संदेश मिलता है:

Font from origin 'https://XXXX.cloudfront.net' has been blocked from loading by Cross-Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://example.com' is therefore not allowed access. 

मैं पहले से ही करने की कोशिश की करने के लिए:

  1. gem rack-cors और change my config.ru जोड़े withou टी सफलता
  2. एक after_filter सफलता

बिना तीन fontawesome फ़ाइलों के लिए सफलता

  • Create an invalidation on CloudFront बिना set the server headers करने के लिए सेट का संभावित हल fontawesome मणि को हटाने और बजाय का उपयोग करने के होगा:

    <%= stylesheet_link_tag "//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css", :media => "all" %> 
    

    लेकिन मुझे यह समस्या मिल जाएगी।

    धन्यवाद

  • +0

    का उपयोग नहीं किया सकता है एडब्ल्यूएस S3 बाल्टी पर एक CORS विन्यास जोड़ने की जरूरत है। – typeoneerror

    उत्तर

    3

    मैं इस मुद्दे पड़ा है और यह निम्न परिवर्तन करके हल किया गया था। सबसे पहले, अपने http सर्वर add_header Access-Control-Allow-Origin *;

    पूरा इस्तेमाल किया विन्यास पर एक हैडर सेट:

    location ~* \.(ttf|ttc|otf|eot|woff|woff2|svg|font.css)$ { 
        add_header Access-Control-Allow-Origin *; 
        expires max; 
        allow all; 
        access_log off; 
        add_header Cache-Control "public"; 
    } 
    

    और फिर CloudFront पर अमान्यकरण पैदा करते हैं।

    ps: मैं रैक CORS या किसी अन्य मणि

    +0

    हमें यह कोड कहां रखना चाहिए? उत्पादन.आरबी करने के लिए? या प्रारंभकर्ता? –

    +0

    @ शालाफिस्टर ये nginx वेब सर्वर विन्यास हैं। – Cyzanfar

    संबंधित मुद्दे