1

我正在使用 google app engine sdk 1.8.6 for python,它在 localhost 上运行良好。但最近谷歌已切换到 sdk 1.8.7,因为我的应用程序无法正常工作。它在本地引发 HTTPError:HTTP Error 403: Forbidden

有什么方法可以让我们在appspot.com 上使用以前的版本。

这是我对 SDK 1.8.7 的堆栈跟踪
(注意)使用 SDK 1.8.6 时,相同的应用程序可以正常工作

URLError(error(2, 'No such file or directory'),)
URLError(error(2, 'No such file or directory'),)
Traceback (most recent call last):
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate
    req.respond()
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond
    self.server.gateway(self).respond()
INFO     2013-11-09 06:30:25,630 module.py:608] default: "GET / HTTP/1.1" 500 -
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2115, in respond
    response = self.req.server.wsgi_app(self.env, self.start_response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/wsgi_server.py", line 269, in __call__
    return app(environ, start_response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/request_rewriter.py", line 311, in _rewriter_middleware
    response_body = iter(application(environ, wrapped_start_response))
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/python/request_handler.py", line 97, in __call__
    self._flush_logs(response.get('logs', []))
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/python/request_handler.py", line 233, in _flush_logs
    apiproxy_stub_map.MakeSyncCall('logservice', 'Flush', request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_stub_map.py", line 94, in MakeSyncCall
    return stubmap.MakeSyncCall(service, call, request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_stub_map.py", line 328, in MakeSyncCall
    rpc.CheckSuccess()
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_rpc.py", line 156, in _WaitImpl
    self.request, self.response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/ext/remote_api/remote_api_stub.py", line 200, in MakeSyncCall
    self._MakeRealSyncCall(service, call, request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/ext/remote_api/remote_api_stub.py", line 226, in _MakeRealSyncCall
    encoded_response = self._server.Send(self._path, encoded_request)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/appengine_rpc.py", line 409, in Send
    f = self.opener.open(req)
  File "/usr/lib/python2.7/urllib2.py", line 404, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 422, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1214, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1184, in do_open
    raise URLError(err)
URLError: <urlopen error [Errno 2] No such file or directory>
Traceback (most recent call last):
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate
    req.respond()
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond
    self.server.gateway(self).respond()
  File "/home/rocker/CloudAppGCDC/sdk/gg/lib/cherrypy/cherrypy/wsgiserver/wsgiserver2.py", line 2115, in respond
    response = self.req.server.wsgi_app(self.env, self.start_response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/wsgi_server.py", line 269, in __call__
    return app(environ, start_response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/request_rewriter.py", line 311, in _rewriter_middleware
    response_body = iter(application(environ, wrapped_start_response))
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/python/request_handler.py", line 97, in __call__
    self._flush_logs(response.get('logs', []))
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/devappserver2/python/request_handler.py", line 233, in _flush_logs
    apiproxy_stub_map.MakeSyncCall('logservice', 'Flush', request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_stub_map.py", line 94, in MakeSyncCall
    return stubmap.MakeSyncCall(service, call, request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_stub_map.py", line 328, in MakeSyncCall
    rpc.CheckSuccess()
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/api/apiproxy_rpc.py", line 156, in _WaitImpl
    self.request, self.response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/ext/remote_api/remote_api_stub.py", line 200, in MakeSyncCall
    self._MakeRealSyncCall(service, call, request, response)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/ext/remote_api/remote_api_stub.py", line 226, in _MakeRealSyncCall
    encoded_response = self._server.Send(self._path, encoded_request)
  File "/home/rocker/CloudAppGCDC/sdk/gg/google/appengine/tools/appengine_rpc.py", line 409, in Send
    f = self.opener.open(req)
  File "/usr/lib/python2.7/urllib2.py", line 404, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 422, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1214, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1184, in do_open
    raise URLError(err)
URLError: <urlopen error [Errno 2] No such file or directory>

我不明白为什么它在 sdk 1.8.6 而不是 sdk 1.8.7 中工作。

4

2 回答 2

1

不,没有办法。生产运行时由谷歌升级,你根本无法控制。

于 2013-11-09T04:11:38.430 回答
0

HTTP 错误从您的应用尝试通过urlfetch. 这很可能与 SDK 更新无关。

如果您怀疑,请向我们展示堆栈跟踪、您正在使用的代码以及您尝试访问的站点。

于 2013-11-09T06:14:55.243 回答