【问题标题】:Server Error 500 When Using gcloud to deploy my Python Web App使用 gcloud 部署我的 Python Web 应用程序时出现服务器错误 500
【发布时间】:2020-10-26 02:53:34
【问题描述】:

在关注 freecampcode 的网络应用程序 tutorial,创建我自己的 Google Cloud SDK 项目并使用 Python 和 Flask 部署我的示例社交网络网站(我发现大多数人认为是 this tutorial)后,我得到了同样的错误:@987654323 @,看起来像:

Error: Server Error
The server encountered an error and could not complete your request.
Please try again in 30 seconds.

检查日志,我得到了错误:

-2020-07-06 01:51:29 default[20200705t214944]  "GET / HTTP/1.1" 500
-2020-07-06 01:51:32 default[20200705t214944]  "GET /favicon.ico HTTP/1.1" 500

任何帮助将不胜感激。我一直在这个问题上停留了一段时间。如果您需要有关该项目的更多信息,请告诉我。这是我的第一个 gcloud 项目。

编辑:我检查了错误日志并看到了错误:

ImportError: No module named main
    at LoadObject (/base/alloc/tmpfs/dynamic_runtimes/python27g/174489198b39d9fb/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:85)
at _LoadHandler (/base/alloc/tmpfs/dynamic_runtimes/python27g/174489198b39d9fb/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:311)
at Handle (/base/alloc/tmpfs/dynamic_runtimes/python27g/174489198b39d9fb/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py:240)

所以我添加了文件 main.py 的内容:

from app.wsgi import main as app

entrypoint: gunicorn -b :$PORT app.wsgi:main

我仍然遇到同样的内部错误。

【问题讨论】:

  • 另外,使用“python app.py”时,我可以在本地成功运行应用程序
  • 你能检查一下这个的详细日志吗?我也面临同样的情况,错误是关于图书馆的。一些依赖项没有安装。
  • 这些条目来自 access 日志。查看错误日志。
  • 感谢您回来 - 我在阅读错误后对帖子进行了编辑。

标签: python flask server gcloud internals


【解决方案1】:

我注意到教程 1 (this one) 包含 python2 的操作方法,而第二个教程 (this one) 是使用 python3 构建的方法。

还有什么python2不支持了,学习怎么用也没有意义。这是reference

我想您必须更改 app.yaml 文件中的环境。 Here 是对 python3 环境的引用。我会从那开始。

我也推荐你去谷歌云平台打开App Engine(直接link)。在右侧,您可以学习名为“App Engine 快速入门”或“Hello World”的教程。您可以选择 Python 并通过创建 HelloWorld 应用程序的整个过程,顺便说一下 Flask 也是如此。我会在你尝试之前尝试一下。

希望对你有帮助!

【讨论】:

  • 现在可以使用 - 非常感谢!主要问题是我的虚拟环境仅限于 python2.7 - 我创建了一个新环境并解决了问题。感谢您的帮助!
  • 请考虑接受答案,我将不胜感激!谢谢!
【解决方案2】:

一种方法是尝试关闭调试模式

如果它仍然不起作用,那么请尝试以下方式,您将获得确切的详细信息,为什么会出现此错误

试试这个,它会返回确切的错误

@app.errorhandler(500)
  def internal_server_error(e):
    return jsonify(error=str(e)), 500

【讨论】:

    猜你喜欢
    • 2021-12-04
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-27
    • 2017-11-05
    • 2019-04-28
    • 1970-01-01
    相关资源
    最近更新 更多