You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同时部署Flask前后端与React前端的GAE app.yaml配置问题

适配该架构的app.yaml配置如下

runtime: python39
# 调整gunicorn超时时间,避免冷启动、慢请求触发进程超时
entrypoint: gunicorn -b :$PORT --timeout 120 main:app
# 可根据业务负载调整实例规格
instance_class: F1

handlers:
  # 优先匹配认证蓝图的静态资源请求,直接交给GAE静态层处理,不占用Python进程资源
  - url: /auth/static
    static_dir: api/static
    secure: always

  # 匹配React构建产物的静态资源(css、js、图片等),走GAE静态CDN
  - url: /static
    static_dir: build/static
    secure: always

  # 匹配所有/auth开头的动态路由,转发给Flask应用处理
  - url: /auth/.*
    script: main.app
    secure: always

  # 剩余所有请求(含React前端路由、其他API路由)统一转发给Flask处理
  - url: /.*
    script: main.app
    secure: always

配套配置检查项

部署前需要确认Flask侧的基础配置正确,避免出现404问题:

  • 主应用初始化时要正确指定React静态文件路径:
app = Flask(
    __name__,
    static_folder='build',
    static_url_path=''
)
  • 确保在main.py中正确注册了认证蓝图:
from api.auth import authentication
app.register_blueprint(authentication)

原配置问题说明

你之前的配置将所有请求(包括大量静态资源请求)全部交给Python工作进程处理,静态资源请求会占用进程资源,遇到冷启动或者请求量稍大的场景就会出现请求堆积,触发工作进程超时。将静态资源交给GAE原生静态层处理,不需要经过Python进程,能大幅降低进程负载,解决超时问题。

内容的提问来源于stack exchange,提问作者Solvation

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:54:04