我正在构建一个具有以下 url 结构的 Web 应用程序:
/ is the landing page, not angular based
/choose uses Angular, it basically contains search
/fund/<code> also with Angular, contains specific data for a certain fund
索引没有问题/
,它只是一个简单的 html,已经 SEO 优化。但我需要两者/choose
并被/fund/...
谷歌抓取,这就是问题所在。
我的应用程序使用 HTML5 模式,我们从不使用 hashbangs 指向应用程序 url,例如foo.com#!/choose
,always foo.com/choose
。
另外,根据谷歌关于这件事的文档<meta name="fragment" content="!">
,我把我们拥有的每个 Angular 页面放在首位。但是使用“fetch as google”来检查我的网站,我无法意识到谷歌是如何为我的服务器请求页面的。我在后端使用 Django,并构建了一个中间件来捕获_escaped_fragment_
并对其采取行动,但 Google 从未发送过它。
所以,简单地说,我的问题是:
- 为什么 Google 不使用 获取我的网址
_escaped_fragment_
? - 谷歌将如何获取页面?
foo.com?_escaped_fragment_=/choose
foo.com/choose?_escaped_fragment_=