【发布时间】:2017-06-16 03:12:45
【问题描述】:
我们正在使用基于 openjdk:8 的 Dockerfile 在 App Engine 灵活自定义运行时上运行 Metabase 实例。目前它允许访问http://[metabase-project].appspot.com/ 和https://[metabase-project].appspot.com/。我想通过将所有 http 流量重定向到 https 来强制使用 SSL。
Dockerfile 看起来像这样:
FROM openjdk:8
ADD https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 ./cloud_sql_proxy
ADD http://downloads.metabase.com/v0.21.1/metabase.jar ./metabase.jar
CMD ./cloud_sql_proxy -instances=$INSTANCE=tcp:$MB_DB_PORT -dir=/cloudsql & java -jar ./metabase.jar
我们的 app.yaml 看起来像:
service: metabase
runtime: custom
env: flex
在普通的 App Engine app.yaml 文件中,我想添加:
handlers:
- url: [something]
secure: always
但是在自定义运行时中,我们无法访问这样的处理程序。有没有办法配置灵活的运行时为所有流量执行重定向?
【问题讨论】:
-
您的域名提供商是否提供域名转发?您可以将所有
http:转发到https: -
@GAEfan 这仅适用于自定义域,并且项目 appspot.com 子域将允许 http 不转发,对吧?
-
正确,它只适用于自定义域。我不知道 apppot 域的内置功能。您可能需要测试
https的请求标头,并对非 https 请求强制重定向。
标签: google-app-engine ssl app-engine-flexible metabase