我正在创建一个GAE应用程序。
当我将GAE PHP应用程序设置为授权应用程序来访问我的 云SQL实例,我收到以下警告:
App Engine区域必须与Cloud SQL实例区域相同!
如何验证或更改GAE应用程序的区域?
谢谢
我正在创建一个GAE应用程序。
当我将GAE PHP应用程序设置为授权应用程序来访问我的 云SQL实例,我收到以下警告:
App Engine区域必须与Cloud SQL实例区域相同!
如何验证或更改GAE应用程序的区域?
谢谢
您可以使用 gcloud app describe --project <projectId>
命令获取位置。
设置后,您无法更改应用的区域。
请参考这里。
例如:
$ gcloud app describe --project myapp-1337
authDomain: gmail.com
codeBucket: staging.myapp-1337.appspot.com
defaultBucket: myapp-1337.appspot.com
defaultHostname: myapp-1337.appspot.com
featureSettings:
splitHealthChecks: true
gcrDomain: us.gcr.io
id: myapp-1337
locationId: us-central
name: apps/myapp-1337
servingStatus: SERVING
您可以在[1]中查看申请的位置。
关于更改地区,请参阅[2]了解更多信息。
[1] - https://appengine.google.com/
[2] - 更改GAE申请位置
更新:现在可以从新的开发人员控制台创建EU应用程序,并且不需要白名单/高级状态。看起来“位置”选项卡只会在GAE控制台中显示帐户是否已列入白名单/ Premier。找到应用程序位置的方法仍然在旧的GAE控制台 - >从列表中单击应用程序转到仪表板 - >如果您在app_id =之后看到链接中的e~,您的应用程序在EU中,否则如果您看看你的应用程序在美国。
另一种方法是使用Ilya Zakreuski建议的gcloud命令。
您可以从运行时环境获取AppId:
Java的:
ApiProxy.getCurrentEnvironment().getAppId()
或Python:
os.environ['APPLICATION_ID']
@Ilya和@Nikita提到的前缀仍然适用于:
前缀为e~表示欧盟,s~表示美国。
附:看起来两个dev控制台都已更新以从其他地方获取App ID,因此它们没有此前缀。