2012-03-09 72 views
13

我python27应用程序的部署失败的几个原因:App Engine部署失败,并显示“客户端错误(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 2012-03-12 22:27:19

+0

我遇到了同样的问题,坦率地说,“这个请求对于一个未知的原因是无效的”。我几乎没有改变我的应用程序。我只是在一个HTML文件中做了一次更改 - 没有更改配置文件。我得到这个错误。我正在使用Linux,我尝试删除主目录中的一些文件 - 例如.appcfg_oauth2_tokens之后,它使用Chrome向我请求应用程序授权,但仍然收到相同的错误。有人请帮忙吗? – 2016-03-02 05:56:53

+0

更新:我能够通过从app.yaml中的URL参数中删除文件名中的点之前的反斜杠来解决问题。这用于之前正常工作。我添加了反斜线,认为URL参数接受普通的正则表达式语法。它确实早些时候做的。对于任何其他人也有这个问题,请尝试查看app.yaml文件的问题。对整个项目目录进行备份,并开始排除所有可疑线路 – 2016-03-07 05:09:11

回答

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 2012-03-12 15:27:55

+0

这不应该成为问题,在这个晦涩的博客文章他们说:“文件限制:我们增加了你的文件数量可以使用您的应用程序上传3,000到10,000个文件,并且文件大小限制也从10MB增加到32MB。“ http://googleappengine.blogspot.com/2011/10/app-engine-155-sdk-release.html – Malartre 2012-03-12 22:27:58

1

我有这个,因为我在app.yaml中有一个流氓)。我会检查您为错误所做的最后一件事情,因为尽管您的应用程序可能会上传,但错误可能会导致应用程序无法部署。

1

这是当部署在部署过程中发送非常意外的数据到App Engine时触发回退的错误消息。

换句话说,没有速战速决这里,但也有几件事情,您可以检查:

  • 检查您的应用程序元数据app.yaml Python和appengine-web.xml为Java。仔细检查每个字段。如果应用程序名称非常错误,可能会触发此错误。
  • 确保您的部署凭据有效。如果您使用OAuth 2.0进行身份验证,请尝试使用基于密码的身份验证。
8

只是记录我在此相关的问题的经验。

我得到了一个“客户端错误400 /不明原因”,因为我的app.yaml错误处理程序是在一个静态目录指向的文件。

我感动的错误文件到一个单独的目录更新的app.yaml路径。

更新正常工作。

3

我知道这是一个老问题,但我想我会提供一个为我工作的解决方案。从GAE启动器中选择Control,然后选择Clear Deployment Credential。再次部署。部署脚本将打开GAE请求访问的网页,以使用您的Google帐户进行身份验证。 Jen Tong的回答帮助我找到了解决方案。

+0

为我工作!谢谢 :) – Rishabh 2017-05-18 07:30:35

0

此错误的原因之一是文件夹中有超过1000个文件。

对我来说,我有大约1K的图像,但随后9个文件夹,我认为把它在上面。我还没有检查是否限制也存在文件夹计数,但我想它是。

相关问题