2010-05-06 8 views
23

मैंने अपनी वेबसाइट का एक नया संस्करण धक्का दिया, लेकिन अब सीएसएस और स्थिर छवियां ठीक से तैनात नहीं हो रही हैं। http://1.latest.gaiagps.appspot.com/सीएसएस फ़ाइल तैनात करने पर अपडेट नहीं हो रहा है (Google AppEngine)

कोई मदद: http://www.gaiagps.com

AppEngine हालांकि सही होने के रूप में नवीनतम संस्करण को दिखाता है:

यहाँ में गड़बड़ पेज है?

उत्तर

25

मैंने इसे पहले से देखा है ऐप इंजन पर, कैश-बस्टिंग क्वेरी पैरामीटर जैसे /stylesheets/default.css?{{ App.Version }} का उपयोग करते समय भी।

  1. आप की तैनाती या default को एक नया संस्करण बदलकर एक नया संस्करण धक्का:

    यहाँ मेरी (अपुष्ट) सिद्धांत है।

  2. हालांकि यह अद्यतन आपके ऐप चलाने वाले सभी जीएई उदाहरणों के लिए प्रचारित किया जा रहा है ...
  3. ... कोई आपकी साइट को हिट करता है।
  4. स्थिर संसाधन default.css{{ App.Version }} के लिए अनुरोध Google के सीडीएन को भेजा गया है, जो अभी तक नहीं है।
  5. Google की सीडीएन सभी मामलों के लिए चरण # 2 से प्रचार करने से पहले संसाधन के लिए जीएई से पूछता है।
  6. यदि आप दुर्भाग्यपूर्ण हैं, तो GAE पुराने संस्करण को चलाने वाले उदाहरण से संसाधन प्रदान करता है ...
  7. ... जो अब Google के सीडीएन में आधिकारिक "नया" संस्करण के रूप में कैश हो जाता है।

जब यह (यदि ऐसा होता है) होता है, तो मैं पुष्टि कर सकता हूं कि कैश-बस्टिंग ब्राउज़र कार्य की कोई भी मदद नहीं करेगा। Google सीडीएन सर्वर गलत संस्करण धारण कर रहे हैं।

ठीक करने के लिए: एकमात्र तरीका जिसे मैंने ठीक करने के लिए पाया है वह एक और संस्करण तैनात करना है। आप फिर से ऐसा होने का जोखिम नहीं चलाते हैं (यदि आपने दौड़ की स्थिति के बाद से कोई सीएसएस परिवर्तन नहीं किया है), क्योंकि यदि दौड़ की स्थिति होती है, तो संभवतः आपका पहला अपडेट तब तक किया जाता है जब आप अपना दूसरा तैनात करते हैं, तो सभी उदाहरण सही संस्करण की सेवा करेंगे चाहे कोई फर्क नहीं पड़ता।

+0

मैं इसे खरीदूंगा ... हालांकि मुझे यकीन नहीं है कि यह सही है। आखिरकार यह घंटों बाद ही खुद को मंजूरी दे दी। –

+0

मुझे एक ही समस्या का सामना करना पड़ रहा है। मेरे मामले में मैंने इसे रात भर छोड़ने के बाद भी नया सीएसएस नहीं दिया जा रहा था। मैं तकनीक – coderman

+0

कैश फटने की कोशिश करने जा रहा हूं, अब मुझे इसका सामना करना पड़ रहा है। मैंने कई बार तैनात किया है, लेकिन यह पुरानी स्थिर फाइलों की सेवा करता रहता है। हालांकि अगर मैं ऐप के संस्करण का संदर्भ देता हूं - उदाहरण के लिए, अल्फा 5.latest.xxx.appspot.com - तो सही फ़ाइल परोसा जाता है। – mainsocial

2

आपका लिंक मुझे ठीक लग रहा है, जब तक कि मुझे कुछ याद न हो।

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

1. नए सीएसएस को सबसे अच्छा डाउनलोड करने के बाद से यह आपके कैश में नहीं है, इसलिए यह आपके लिए सही ढंग से दिखाई देता है।

+0

मेनू के नीचे मेनू मेनू क्षैतिज या पर्याप्त नहीं है, और स्लाइड शो में छवियां गलत हैं। मैंने अपने कैश को रीफ्रेश करने और एक अलग ब्राउज़र से लोड करने का प्रयास किया है। –

+0

आपके द्वारा लिंक की गई दो साइटें ओएस एक्स के लिए फ़ायरफ़ॉक्स और क्रोम पर बिल्कुल समान दिखती हैं। मुझे संदेह है कि अभी भी कुछ समस्या है जो केवल आपको या आपके ब्राउज़र को प्रभावित कर रही है, जब तक कि कोई और यह सत्यापित न कर सके कि यह अलग दिखता है। –

+0

अपने पृष्ठ को पुनः लोड करने के लिए + का उपयोग करने का प्रयास करें (कम से कम एफएफ में)। मेनू और स्लाइडशो छवियों दोनों, यहां सब कुछ ठीक लगता है। सौभाग्य। – Emilien

3

मेरे लिए क्या काम किया है।

  1. स्थिर डोमेन से अपनी सीएसएस फ़ाइल की सेवा करें। यह स्वचालित रूप से जीएई द्वारा बनाया गया है।

    //static.{your-app-id}.appspot.com/{css-file-path}

  2. आपके आवेदन तैनात। इस बिंदु पर आपका ऐप टूटा जाएगा।

  3. परिवर्तन सीएसएस फ़ाइल

    //static.{your-app-id}.appspot.com/{css-file-path}?v={version-Name}

  4. के संस्करण
  5. फिर से तैनात करें।

हर बार जब आप सीएसएस फ़ाइल बदलते हैं। आपको 2,3 और 4 को दोहराना होगा।

0

अपने ब्राउज़र पर कैश साफ़ करने का प्रयास करें। सटीक एक ही मुद्दा था और इसे आसानी से कैश साफ़ करके तय किया गया।

1

मुझे यह समस्या भी थी। मैं जीएई के साथ फ्लास्क का उपयोग कर रहा था इसलिए मेरे पास app.yaml में एक स्थिर हैंडलर नहीं था। जब मैंने इसे जोड़ा, तैनाती काम करता है। अपने app.yaml को यह

handlers: 
- url: /static 
    static_dir: static 

की तरह कुछ जोड़ने का प्रयास करें और फिर से तैनात। यह मेरे लिए काम किया। स्पष्ट रूप से Google उन फ़ाइलों को अपडेट न करके ऑप्टिमाइज़ करने का प्रयास कर रहा है, जो ऐसा लगता है कि उपयोगकर्ता नहीं देख सकते हैं।

0

यहाँ क्या मेरे लिए काम किया:

पहले, मैं app.yaml पर संस्करण बदल दिया है।

फिर नीचे

इन चरणों का पालन अपने कंसोल पर जाएं -> अपने प्रोजेक्ट पर क्लिक करें।

इसमें सभी संस्करणों हो जाएगा, और कौन-सा संस्करण डिफ़ॉल्ट है:>संस्करण -

पक्ष मेनू पर, संगणना पर क्लिक करें। मेरा एक पुराने संस्करण पर सेट किया गया था।

नया संस्करण चिह्नित करें।

मेरे लिए काम किया। कोई भी चिंता?

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