CORS 阻止某些文件而不阻止其他文件

CORS 阻止某些文件而不阻止其他文件

我正在从另一台服务器上的网站代码访问一台服务器上的图像文件,因此需要 CORS。图像放在画布上,我使用 canvas.toDataURL() 获取生成的 URL,因此访问一定不能被污染。我尝试过“Header set Access-Control-Allow-Origin "*"”和“Header set Access-Control-Allow-Origin "https://my-website.com“(在不同的时间)在图像服务器上的 /public_html 中的 .htaccess 文件中。

问题:某些图像文件可以正常访问,但其他图像文件出现以下错误:“来自来源‘example1.com’已被 CORS 策略阻止:‘Access-Control-Allow-Origin’标头具有值‘example2.com’,该值不等于提供的来源。”

什么原因造成同一目录下某些文件访问正常,而其他文件却被访问不到呢?

答案1

问题解决了!问题出在 WIX 上。然而,解决方案却令人惊讶。

背景:我的主要网站是用 WIX 实现的。我试图从该网站上传来自辅助网站的图像,该辅助网站只是一个图像库。我简单地使用:var sourceImage = new Image(); sourceImage.src = url; 在 WIX 页面上的 iFrame 中的脚本中。但请注意,我需要上传的图像不受 CORS 污染,因为我想通过 toDataURL() 传递图像以获取临时 URL。

事实证明,WIX 上传不允许某些文件名。例如,WIX 不喜欢文件名中包含“-Email” - 删除它,保留文件名,其他内容保持不变,上传即可正常工作。此外,WIX 不喜欢文件名中包含“screenshot”。可能还有其他排除项,因此如果您是 WIX 开发人员,请注意。

相关内容