页面通过HTTPS加载,但请求了不安全的字体-但所有链接均为HTTPS

时间:2018-08-06 09:20:46

标签: html wordpress http https

我有一个WP网站,该网站从同一页面上的目录加载一些自定义字体。 到现在为止还没有任何问题。我怀疑可能是某些插件对.htaccess有所影响。

Mixed Content: The page at 'https://www.mypage.net/' was loaded over HTTPS, but requested an insecure font 'http://www.mypage.net/'. This request has been blocked; the content must be served over HTTPS.

通常,您可以通过在HTTP末尾添加s来轻松解决此问题,但是所有链接都是HTTPS,但事实并非如此。我检查了<link>到字体样式表。然后,我检查了样式表,所有链接均为HTTPS和绝对路径。

页面强制HTTPS重定向,并且在WP的设置中,页面被定义为具有HTTPS的URL。

2 个答案:

答案 0 :(得分:0)

您可以尝试添加名为Really simple ssl的插件,以检查是否可以解决您的问题

答案 1 :(得分:0)

更新:经过大量测试和修改,终于可以解决。

首先;我的字体文件夹有一个.htaccess规则,以防止从网站以外的任何其他来源下载(需要许可证)。 RewriteRule之一使用HTTP而不是HTTPS:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mypage\.net/ [NC]
RewriteCond %{REQUEST_URI} !hotlink\.(ttf|otf|woff|woff2|eot) [NC]
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in.*$ [NC]
RewriteRule .*\.(ttf|otf|woff|woff2|eot)$ http://www.mypage.net/ [NC]
                                          ^^^^^

我将其修复为HTTPS,然后将其更改为其他错误:

Failed to decode downloaded font: https://mypage.net/fonts/font.woff OTS parsing error: invalid version tag

要解决此问题,我必须确保我的字体具有deep font support,然后在某处读取可以通过将版本添加到链接(?v = x)来解决的问题,例如: / p>

src: url('https://mypage.net/fonts/font.woff?v=1') format('woff');

这适用于.woff,.woff2和.eot,但由于某些原因不适用于.ttf。在.ttf上添加版本扩展名会给我404。实际上,我有时还遇到过,它给了我404无扩展名。我弯腰,将包含.ttf的src: url('…');从底部移到顶部,以某种方式解决了两个错误。

在这一点上它没有给我错误,但是现在它只是没有加载字体。它变为后备。随机搜索后,我发现通过插件(ProPhoto6-仅允许X份上传的自定义字体,很笨)上传的自定义字体具有不同的读/写权限。我将权限更改为我使用的所有字体的值(由ProPhoto上传并正在使用的字体); 0666(有0644)。最终使它加载无误。