当我在PC上使用Firefox访问此URL时:
http://help-msa.publictalksoftware.co.uk/msa-options-calendars.html
然而,我暂时拥有完全相同的网站:
http://help.trucklesoft.co.uk/msa-options-calendars.html
它呈现正确。按钮具有正确的符号,内容完全正常。
以前的链接似乎在带有Safari的iPad上显示正确的按钮,但内容不起作用。
我的代码在两个网站上完全相同。为什么不对前者起作用呢?
代码是我的HelpNDoc开发的。
当我在控制台中查看Chrome页面时,它会说:
访问字体
'https://help-msa.publictalksoftware.co.uk/vendors/bootstrap-3.3.6/fonts/glyphicons-halflings-regular.woff2'
来自'http://help-msa.publictalksoftware.co.uk'
来源 被CORS策略阻止:没有'Access-Control-Allow-Origin'标题 出现在请求的资源上。起源 因此不允许'http://help-msa.publictalksoftware.co.uk'
访问。
咦?这有关系吗?
阻止跨源请求:同源策略禁止读取 远程资源在 https://help-msa.publictalksoftware.co.uk/vendors/bootstrap-3.3.6/fonts/glyphicons-halflings-regular.ttf。 (原因:缺少CORS标题'Access-Control-Allow-Origin'。
我想我已经解决了。我的www.publictalks.co.uk
网站使用的是 https 协议。如果您使用http
访问该网站,您将被重定向。
如果我将上述链接调整为:
https://help-msa.publictalksoftware.co.uk/msa-options-calendars.html
没关系:
由于某些原因,此子域 help-msa
未重定向到 https
网站。
我在iPad和iPhone上进行了上述测试。我现在需要查看我的电脑。
答案 0 :(得分:0)
此处的问题是我的网站正在使用https
,而我使用的是http
前缀的链接。
我认为子域会像网站的其他部分一样重定向,但他们没有。因此,解决方案是将子域重定向到https
。
这可以在HTACCESS中完成:
#Rewrite everything to https
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
但在我的情况下,我有Wordpress Really Simple SSL Pro插件(购买),所以我问他们是否可以通过设置支持外部子域。