我创建了一个简单的应用程序来测试 Google Cloud App Engine 部署。 该应用程序成功部署到谷歌云,但该网站只是说:“服务不可用”并显示以下错误:500内部服务器错误
你能帮忙吗?
需求.txt
Flask==2.1.2
app.yml
runtime: python39
entrypoint: gunicorn -b :$PORT app:app
instance_class: F2
env_variables:
FLASK_ENV: "production"
这就是我试图解决它的方法,但没有成功。
应用程序.py
from flask import Flask, send_from_directory
import os
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
@app.route('/favicon.ico')
def favicon():
return send_from_directory(os.path.join(app.root_path, 'static'), 'favicon.ico', mimetype='image/vnd.microsoft.icon')
if __name__ == '__main__':
app.run(debug=True, port=8080)
我还尝试使用 FastAPI 和 Cloud Run 部署,但两者都显示相同的错误。我错过了什么?
从 Python 代码中删除
favicon.ico
的路由处理程序。
将您的网站图标放在应用程序文件夹的根目录中。
然后更新您的
app.yaml
文件并将以下内容添加为您的处理程序之一
handlers:
- url: /favicon\.ico
static_files: favicon.ico
upload: favicon\.ico
注:
a) 如果您希望将网站图标保留在当前位置(静态范围内),请将
static_files
更改为 static/favicon.ico
b) 我知道您正在测试,但如果有人点击您的网址或者您忘记关闭它(当您仍在测试时),使用 F2 实例将会非常昂贵。