我正在使用TYPO3,并有一个奇怪的问题,图片随机没有出现在所有的网页。我检查了httaccess,以及https证书,所有设置都是正确的。在切换到https之前,我没有遇到任何问题。当我以Chrome下载网站并将其上传回服务器时,带有一个包含所有文件的文件夹,它在所有设备上都能完美地工作。如果我打开由TYPO3生成的网站,它会让我们的图像消失,每次我重新加载它时都会使用不同的图片,而css代码有时也不会加载。我还会得到https错误,如:
混合内容:在'https://test.com/index.php?id=266‘处的页面是通过HTTPS加载的,但是请求一个不安全的图像'通讯/google.jpg’。该内容还应通过HTTPS提供。
但是它是通过https (整个内容)提供的。
它只在浏览器(比如Galaxy)和Windows计算机上的9-10上这样做。Chrome显示它很好,但是它显示控制台中的https错误,所以。有什么想法吗?
发布于 2014-12-01 08:39:15
正如您所看到的,不同的浏览器、线程混合了不同的内容。您需要检查为什么浏览器在处于http模式时尝试通过https获取图像,正如Jost提到的,您很可能正在使用带有http://test.com/的baseURL,将其更改为https://test.com/,甚至更好的//test.com/。
另一方面,正如Jost还提到的,您可以完全避免baseURL,而支持config.absRefPrefix --这是我从一年开始成功地在所有安装上使用的方法。但是请记住,这可能是TER中一些较旧的扩展,这需要baseURL,因此您需要一步一步地检查您的情况。
最后,检查给定的src attr是否由于某种原因没有取消路径,如果是,请尝试更改它(取决于创建这些路径的内容)。
发布于 2014-12-01 08:46:09
除了biesior的评论:我们有这样的现象:即使设置了baseUrl,并且配置了从http到.htaccess的永久重定向,但一些Internet客户端仍然试图通过http访问内容,因为它们跳过.htaccess重定向的原因并不明显。通过设置跨源资源共享头,我们终于解决了这个问题。
<IfModule mod_headers.c>
# Configure CORS
Header set Access-Control-Allow-Origin "https://www.mydomain.tld"
Header always append Access-Control-Allow-Origin: "http://www.mydomain.tld"
</IfModule>https://stackoverflow.com/questions/27219021
复制相似问题