【发布时间】:2020-01-10 09:24:30
【问题描述】:
主要问题是我的网站在google cached的页面不完整,没有数据,因为XHR错误,这里有一些细节:
我使用AngularJs 实现了我的网站,它可以在我测试过的任何浏览器和位置上正常工作。
谷歌说,“Google Search Engine 看到 modern browsers 显示的内容”,但我的网站还没有正确索引,所以我的代码有问题!
我一直在努力与 google 一起将我的网站页面完全介绍给 Google,但我得到的只是带有未填充控件且没有任何通过 Angular 加载的数据的页面。当我在Google Live Test 上查看我的网站时,我在Page Resources 中收到这种错误:“Couldn't be loaded”
其中一些错误与现在无关紧要的图像有关,但紧急问题是大多数XHRs 无法加载!
没有详细信息可以知道确切的问题是什么,但是当我在谷歌上检查我的网站缓存页面时,我在开发者工具上看到了这个错误:
从源访问“...”处的 XMLHttpRequest 'https://webcache.googleusercontent.com' 已被 CORS 阻止 策略:对预检请求的响应未通过访问控制 检查:它没有 HTTP ok 状态。
我在 web.config 中添加了这些标签,但 Live Test 和 Google 索引没有变化:
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value=" content-type" />
<add name="Access-Control-Allow-Methods" value="GET, POST, OPTIONS" />
你能告诉我我应该怎么做才能解决这个问题吗?
【问题讨论】:
-
您的 Web 服务器 (IIS?) 未正确处理作为预检请求的 OPTIONS 方法。这个答案可能会帮助stackoverflow.com/a/21458845/3574481
-
@peeebeee 感谢您的评论,我从这个 URL 找到了解决方案,虽然不是您共享链接的那个,而是确认的答案
标签: angularjs indexing cors xmlhttprequest google-index