【问题标题】:Wordpress, Varnish, Apache, SSLWordPress、清漆、Apache、SSL
【发布时间】:2019-01-30 14:23:01
【问题描述】:

我已经安装了 wordpress 并设置了 SSL (LetsEncrypt)。 几个月以来它运行良好。 现在我想添加清漆来加速网站,我有一个问题。 我的配置是: MyPage.com (443) -> Varnish (80) -> MyPage (8080) 没有 https。 当我打开页面时,一切正常 除了静态文件的地址。 所有指向 CSS、JS、图像的 URL 都以 HTTP 而非 HTTPS 的形式提供。 那是因为最终页面由没有 SSL 的 Apache 提供。 您知道如何将地址更改为静态文件,它们将作为 HTTPS(https://MyPage.com/my.js 而不是 http:// MyPage.com/my.js)?

【问题讨论】:

    标签: wordpress apache ssl varnish


    【解决方案1】:

    Wordpress 将链接绝对保存在数据库中。 解决方案1: 您编辑数据库中的所有条目 解决方案2: 简单地使用此插件将数据库中的所有 url 从 http 写入 https:

    https://de.wordpress.org/plugins/really-simple-ssl/

    【讨论】:

      【解决方案2】:

      您可能需要确保 X-Forwarded-Proto 标头已设置并通过 Varnish 一直传递回后端。

      假设你有 Apache:443 -> Varnish:80 -> Backend:8080

      然后在处理 https 的 Apache 配置中将以下内容添加到 VirtualHost

      RequestHeader set X-Forwarded-Proto "https"

      Varnish 应该默认转发这个,除非你对配置做了任何可能阻止它的自定义操作。

      然后应该尊重此标头并用于在资产的 url 上设置协议。

      【讨论】:

        猜你喜欢
        • 2019-05-02
        • 2018-05-11
        • 2017-08-05
        • 2015-08-01
        • 2014-03-04
        • 1970-01-01
        • 1970-01-01
        • 2021-02-28
        • 2018-06-14
        相关资源
        最近更新 更多