【问题标题】:How do I force all requests to use https on a custom domain in appengine?如何强制所有请求在 appengine 中的自定义域上使用 https?
【发布时间】:2013-04-18 01:12:42
【问题描述】:
【问题讨论】:
标签:
google-app-engine
ssl
python-2.7
https
【解决方案1】:
将此添加到您的 app.yaml:
handlers:
- url: YOUR_URL
script: YOUR_SCRIPT
secure: always
【解决方案2】:
这是一篇较旧的帖子,但我在尝试弄清楚如何使用最新的 GAE Flex 环境自己完成此操作时,一直遇到它。我们正在使用 Django,而我们必须用来强制 SSL 的标头/密钥是:
SECURE_SSL_REDIRECT = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
SECURE_HSTS_SECONDS = 31536000 # - One Year
SECURE_HSTS_INCLUDE_SUBDOMAINS = True
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
希望对您有所帮助。
【解决方案3】:
摘自Google document
handlers:
- url: /youraccount/.*
script: accounts.py
login: required
secure: always
always - 与此处理程序匹配但不使用 HTTPS 的 URL 请求会自动重定向到具有相同路径的 HTTPS URL。为重定向保留查询参数。