【问题标题】:How do I force all requests to use https on a custom domain in appengine?如何强制所有请求在 appengine 中的自定义域上使用 https?
【发布时间】:2013-04-18 01:12:42
【问题描述】:

我已经设置了我的证书。 http://www.example.comhttps://www.example.com 都可以。

但是,我想将来自http://www.example.com 的所有流量路由到https://www.example.com

如何使用 appengine 做到这一点?我正在使用 Python。

【问题讨论】:

    标签: 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。为重定向保留查询参数。

        【讨论】:

          猜你喜欢
          • 2021-09-02
          • 1970-01-01
          • 1970-01-01
          • 2016-06-02
          • 2015-07-02
          • 1970-01-01
          • 2018-07-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多