우리 회사는 AngularJS와 라우팅을 사용하여 단일 페이지 애플리케이션 을 개발했습니다 . Google은 JavaScript로 사이트를 적절하게 색인했지만 일부 페이지는 잘 색인하지 않았으므로 HTML 전용 버전을 개발했습니다.
여기에 게시 된 Ajax Crawling Specification 을 따르고 <meta name='fragment' content='!'>
태그와 표준 URL이 있습니다. http://www.example.com/foo/bar
에서 가져올 것으로 예상 됩니다 http://www.example.com/?_escaped_fragment_=/foo/bar
.
그러나 AJAX 사양을 롤링 할 때 이제 JavaScript 버전으로 http://www.example.com/foo/bar
한 번, 새 버전으로로 한 번 모든 페이지의 색인이 두 번 생성 되었습니다 http://www.example.com/#!/foo/bar
. 콘텐츠가 중복되어 사이트를 잘못 표시하기 때문에 이는 유해합니다.
나는 여기와 Google 제품 포럼에서 비슷한 질문을 시도했지만 아무것도 만들 수 없었습니다.
#!
URL을 사용하지 않는 이유 _escaped_fragment_
와 Google AJAX 사양 을 사용하는 이유가 궁금 합니다 .