Google Cloud Platform新部署Flask应用访问权限问题求助
解决GCP App Engine新Flask服务的403访问权限问题
核心原因分析
你遇到的问题分为两部分:
- 部署时无法自动将新版本设为服务默认流量,因为当前账号缺少流量分配权限
- 访问403大概率是因为你访问的是默认PHP服务的域名(
app-name.appspot.com),而非新部署的Flask服务专属域名
步骤1:使用正确的服务访问地址
新服务python-flask-app的专属访问地址格式为:
python-flask-app-dot-app-name.appspot.com
直接访问默认域名会指向原PHP服务,自然会出现权限错误。
步骤2:手动分配流量到新部署的版本
部署已经成功,只是流量没导到新版本,执行以下操作:
- 列出
python-flask-app服务下的所有版本,找到你刚部署的版本ID:
gcloud app versions list --service=python-flask-app
- 将100%流量分配到目标版本(替换
<VERSION_ID>为上一步查到的版本号):
gcloud app services set-traffic --service=python-flask-app --splits=<VERSION_ID>=1
执行完后再次访问新服务的专属域名,应该就能正常打开Flask应用了。
步骤3:解决长期部署权限问题
如果后续需要自动完成部署+流量分配,联系项目所有者为你的账号添加以下角色之一(按权限从小到大推荐):
App Engine Service Admin:仅管理指定服务的流量和版本App Engine Admin:管理所有App Engine资源Editor/Owner:拥有更广泛的项目权限(不推荐最小权限原则)
内容的提问来源于stack exchange,提问作者Apurva Patel
相关产品推荐
相关产品推荐

