Wordpress、Varnish、Apache、SSL

Wordpress、Varnish、Apache、SSL,wordpress,apache,ssl,varnish,Wordpress,Apache,Ssl,Varnish,我已经安装了wordpress并设置了SSL(LetsEncrypt)。 从几个月以来,它工作得很好。 现在我想添加清漆,以加快网站,我有一个问题。 我的配置是: MyPage.com(443)->Varnish(80)->MyPage(8080)无https。 当我打开页面时,一切都正常 除了静态文件的地址之外。 CSS、JS和图像的所有URL都作为HTTP而不是HTTPS提供。 这是因为最后的页面是由Apache提供的,没有SSL。 您知道如何将地址更改为静态文件,它们将作为HTTPS(HT

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

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


您可能需要确保X-Forwarded-Proto标头已设置,并通过Varnish返回后端

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

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

RequestHeader设置X-Forwarded-Proto“https”

Varnish在默认情况下应该转发这个消息,除非您对配置做了任何可能阻止它的自定义操作

然后,应遵守此标头,并将其用于设置资源URL上的协议