繁体   English   中英

被 CORS 政策阻止:没有“Access-Control-Allow-Origin”标头错误

[英]blocked by CORS policy: No 'Access-Control-Allow-Origin' header ERROR

我在访问带有“www”的某些页面时遇到问题。 在网址中。 我有一个在线表格供用户填写,尽管使用 www. 在 URL 前面,表格中会显示错误,某些图标将不会显示,并且优惠券将无法正常使用。

通过 google chrome > 控制台检查此错误已显示:访问字体在“ https://adventurethon.com.au/wp-content/plugins/WP_Estimation_Form/assets/fonts/fa-solid-900.ttf ' from origin ' https ://www.adventurethon.com.au '已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。

正常运行的 URL(不带 www.): https : //adventurethon.com.au/east-gippsland-registration/不正确的运行 URL(带 www.): https : //www.adventurethon.com.au/east-gippsland-登记/

有没有办法确保用户总是被重定向到正确的 URL,这样这些错误就不会显示? 或者,当用户尝试注册时,我们将继续出现错误。

我是一名网页设计师,在整个开发方面仍然有点新,因此非常容易遵循说明!

我一直在与插件支持人员联系,因为我们认为这是一个插件问题,但事实并非如此。 我也联系了托管支持,尽管他们不愿意协助解决问题。

谢谢! 贝克

CORS(跨源资源共享)阻止其他源使用您的资产。

您网站的wwwnon-www版本是两个不同的来源(域), www版本正在尝试访问non-www版本的文件,这是您的服务器不允许的。

有几种方法可以继续:

  1. 将所有流量重定向到一个版本; Apache .htaccess 示例
  2. 调整 CORS 策略 - 您可以使用.htaccess或您的服务器配置文件执行此操作。 这是一个潜在的安全威胁。
  3. 调整您的网址以引用正在访问的域。 假设您使用的是 WordPress,如标记的那样,如果您使用诸如home_url()template_directory_uri()类的辅助函数,这可能会有些困难,因为它们总是指向 WordPress 设置中的 url。 您还可以使用绝对路径引用( /wp-content/themes/freestyle/assets/css/elegant-icons/fonts/ElegantIcons.ttf而不是https://adventurethon.com.au/wp-content/themes/freestyle/assets/css/elegant-icons/fonts/ElegantIcons.ttf )如果您有权更改此设置。

您最好的选择将是第一选择! 你真的不应该有两个版本的网站可以访问,因为它被视为搜索引擎机器人的重复内容,而且 WordPress 并没有真正配置为在两个域上工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM