2012-03-09 9 views
13

मेरी python27 एप्लिकेशन तैनाती कुछ कारणों के लिए विफल हो रहा है:ऐप इंजन परिनियोजन "क्लाइंट त्रुटि (400) के साथ विफल रहता है अनुरोध अनिर्दिष्ट कारण के लिए अमान्य है।"

2012-03-09 16:46:25 Running command: "['C:\\Python27\\pythonw.exe', '-u', 'C:\\Program Files (x86)\\Google\\google_appengine\\appcfg.py', '--no_cookies', u'[email protected]', '--passin', 'update', 'C:\\Users\\XXXXXXXXXXXXXX\\GoogleAppEngine\\XXXXXXXXXXXXXX']" 
Application: XXXXXXXXXXXXXX; version: 1 
Host: appengine.google.com 

Starting update of app: XXXXXXXXXXXXXXX, version: 1 
Getting current resource limits. 
Password for [email protected]: Scanning files on local disk. 
Scanned 500 files. 
Scanned 1000 files. 
Scanned 1500 files. 
Scanned 2000 files. 
Scanned 2500 files. 
Cloning 2973 static files. 
Cloned 100 files. 
Cloned 200 files. 
Cloned 300 files. 
Cloned 400 files. 
Cloned 500 files. 
Cloned 600 files. 
Cloned 700 files. 
Cloned 800 files. 
Cloned 900 files. 
Cloned 1000 files. 
Cloned 1100 files. 
Cloned 1200 files. 
Cloned 1300 files. 
Cloned 1400 files. 
Cloned 1500 files. 
Cloned 1600 files. 
Cloned 1700 files. 
Cloned 1800 files. 
Cloned 1900 files. 
Cloned 2000 files. 
Cloned 2100 files. 
Cloned 2200 files. 
Cloned 2300 files. 
Cloned 2400 files. 
Cloned 2500 files. 
Cloned 2600 files. 
Cloned 2700 files. 
Cloned 2800 files. 
Cloned 2900 files. 
Cloning 3 application files. 

Uploading 4 files and blobs. 
Uploaded 4 files and blobs 
Compilation starting. 
Compilation completed. 
Starting deployment. 
Rolling back the update. 
Error 400: --- begin server output --- 

Client Error (400) 
The request is invalid for an unspecified reason. 
--- end server output --- 
2012-03-09 16:47:14 (Process exited with code 1) 

You can close this window now. 

मैं ऐसा कैसे डीबग कर सकते हैं? धन्यवाद, कार्ल

+0

कोई भी Google इंजीनियर इस पर सहायता कर सकता है? मुझे अभी भी समस्या नहीं मिली है और त्रुटि अस्पष्ट है। – Malartre

+0

मुझे एक ही समस्या है और स्पष्ट रूप से यह कष्टप्रद है कि "अनुरोध एक अनिवार्य कारण के लिए अमान्य है"। मैंने शायद ही कभी अपने ऐप में कोई बदलाव किया है। मैंने बस एक HTML फ़ाइल में एक बदलाव किया - कोई कॉन्फ़िगरेशन फ़ाइल नहीं बदली। और मुझे यह त्रुटि मिल रही है। मैं लिनक्स का उपयोग कर रहा हूं और मैंने होम निर्देशिका में कुछ फ़ाइलों को हटाने की कोशिश की - जैसे .appcfg_oauth2_tokens जिसके बाद उसने मुझे क्रोम का उपयोग करके ऐप प्राधिकरण के लिए कहा लेकिन फिर भी मुझे एक ही त्रुटि मिल रही है। क्या कोई मदद करेगा? –

+0

अपडेट: मैं app.yaml में यूआरएल पैरामीटर से फ़ाइल नाम में डॉट से पहले बैकस्लैश को हटाकर समस्या को हल करने में सक्षम था। यह पहले ठीक काम करने के लिए प्रयोग किया जाता था। मैंने बैकस्लैश को यह कहते हुए जोड़ा कि यूआरएल पैरामीटर सामान्य रेगेक्स सिंटैक्स स्वीकार करता है। और यह निश्चित रूप से, पहले किया था। इस समस्या को किसी और के लिए भी, मुद्दों के लिए app.yaml फ़ाइल को देखने का प्रयास करें। पूरे प्रोजेक्ट निर्देशिका का बैकअप लें और सभी संदिग्ध लाइनों को हटा दें –

उत्तर

1

कुछ फ़ाइलों को हटाने के लिए मेरे लिए काम किया। ऐसा लगता है कि GAE पर ऐप्स के लिए 1000 फ़ाइल हार्ड सीमा हो सकती है, और यह अस्पष्ट त्रुटि कोड कम से कम भाग में होने के लिए प्रयुक्त होता है।

http://www.adampresley.com/2011/06/gae-and-client-error-400.html

+0

मैंने एक त्वरित लुकअप किया और पाया कि सीमा 3000 हो सकती है, मैं आज दोपहर और अधिक जांचने जा रहा हूं। टिप के लिए बहुत बहुत धन्यवाद। http://code.google.com/p/googleappengine/issues/detail?id=161 – Malartre

+0

यह समस्या नहीं होनी चाहिए, इस अस्पष्ट ब्लॉग पोस्ट पर वे कहते हैं: "फ़ाइल सीमाएं: हमने आपके द्वारा फ़ाइलों की संख्या में वृद्धि की है अपने आवेदन के साथ 3,000 से 10,000 फाइलों के साथ अपलोड कर सकते हैं, और फ़ाइल आकार सीमा भी 10 एमबी से 32 एमबी तक बढ़ा दी गई है। " http://googleappengine.blogspot.com/2011/10/app-engine-155-sdk-release.html – Malartre

1

मैं इस क्योंकि मैं एक दुष्ट ) मेरी app.yaml में पड़ा है। मैं त्रुटियों के लिए आपके द्वारा की गई आखिरी चीज़ों की जांच करूंगा क्योंकि यद्यपि आपका ऐप अपलोड हो सकता है, एक त्रुटि एप्लिकेशन को तैनात नहीं कर सकती है।

1

यह एक पतन-त्रुटि त्रुटि संदेश है जो ट्रिगर किया जाता है जब आपकी तैनाती तैनाती के दौरान ऐप इंजन में बहुत अप्रत्याशित डेटा भेजती है।

दूसरे शब्दों में, वहाँ कोई त्वरित सुधार यहाँ है, लेकिन वहाँ आप नीचे दिए कुछ की जांच कर सकते हैं:

  • अजगर के लिए app.yaml और जावा के लिए appengine-web.xml में अपने एप्लिकेशन मेटाडाटा की जाँच करें। प्रत्येक फ़ील्ड को दो बार जांचें। यदि एप्लिकेशन का नाम बहुत गलत है, तो यह इस त्रुटि को ट्रिगर कर सकता है।
  • सुनिश्चित करें कि आपके परिनियोजन प्रमाण-पत्र मान्य हैं। यदि आप OAuth 2.0 के साथ प्रमाणीकरण कर रहे हैं, तो पासवर्ड आधारित प्रमाणीकरण का उपयोग करने का प्रयास करें।
8

बस इस संबंधित सवाल में मेरे अनुभव रिकॉर्डिंग।

मैं क्योंकि मेरे app.yaml त्रुटि संचालकों एक स्थिर निर्देशिका में फ़ाइलों की ओर इशारा करते थे एक 'ग्राहक त्रुटि 400/अनिर्दिष्ट कारण' मिला है।

मैंने त्रुटि फ़ाइलों को एक अलग निर्देशिका में स्थानांतरित किया और app.yaml पथ अपडेट किया।

अद्यतन ठीक से काम किया।

3

मुझे पता है कि यह एक पुराना सवाल है, लेकिन मैंने सोचा कि मैं समाधान प्रदान करूंगा जो मेरे लिए काम करता है। जीएई लॉन्चर से नियंत्रण का चयन करें, फिर स्पष्ट परिनियोजन प्रमाण पत्र साफ़ करें। फिर से तैनात करें। तैनाती स्क्रिप्ट एक वेब पेज खुल जाएगा जहां जीएई प्रमाणीकृत करने के लिए आपके Google खाते का उपयोग करने के लिए पहुंच का अनुरोध कर रहा है। जेन टोंग के जवाब ने मुझे अपने समाधान में मदद की।

+0

मेरे लिए काम किया! धन्यवाद :) – Rishabh

0

इस त्रुटि के कारणों में से एक फ़ोल्डर में 1000 से अधिक फाइलें हैं।

मेरे लिए मैं 1k के बारे में छवियों लेकिन फिर 9 फ़ोल्डरों था और मुझे लगता है कि शीर्ष पर डाल दिया। मैंने जांच नहीं की है कि फ़ोल्डर की गणना के लिए सीमा भी मौजूद है लेकिन मुझे लगता है कि यह करता है।

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