2011-12-28 5 views
2

단일 페이지 앱을 만들었습니다. 모든 딥 링크는 mysite.com/#!/entry_title 형식입니다. 이를 통해 Google (및 Facebook)은 해당 페이지의 내용에 대한 대체 URL을 확인할 수 있습니다.Facebook 공유가 해시 버전 대신 _escaped_fragment_ URL을 표시합니다.

Google 또는 Facebook에서이 페이지의 HTML 스냅 샷을 찾고 있는지 확인하기 위해 서버 측 검사를 설정했습니다. 그렇다면 필요한 페이스 북 또는 메타 태그가 포함 된 다른 헤더를 보냅니다.

여기에 문제가 있습니다. 내 상태 상자에 내 URL (mysite.com/#!/entry_title) 중 하나를 붙여 넣으면 표시되는 URL은 HTML 스냅 샷 URL (mysite.com/?_escaped_fragment_/entry_title)입니다.

HTML 스냅 샷 페이지의 og : url 메타 태그는 mysite.com/#!/entry_title로 설정됩니다.

공유기가 HTML 스냅 샷 버전 대신 URL의 mysite.com/#!/entry_title 버전을 표시하게하려면 어떻게해야합니까?

미리 감사드립니다.

  • 브렛

답변

2

나는이 알아 낸 나는 다른 사람에 대한 답을 게시 할 거라고 생각했습니다.

트릭은 Google/Facebook이 더 예쁜 URL로 이동하도록 리디렉션을 설정하는 것입니다. 그래서

mysite.com/?_escaped_fragment_/entry_title 

의 형태로 어떤 URL이

mysite.com/view/entry_title 

누군가가 내 동적 URL 중 하나를 공유하는 같은 예뻐 뭔가로 리디렉션됩니다, 페이스 북 페이지의 _escaped_fragment_ 버전을 요청하고 리디렉션됩니다 내 더 예쁜 URL (mysite.com/view/entry_title)은 Facebook 게시물에 표시됩니다.

사람들이 항상 내 동적 URL을 공유하도록 mysite.com/view/entry_title 페이지에서 자바 스크립트 리디렉션을 설정하여 mysite.com/#!/entry_title 페이지로 다시 리디렉션했습니다.

페이스 북 공유에 동적 URL이 표시되지 않지만 _escaped_fragment_ 버전보다 더 예쁜 URL을 표시하고 사용자가 공유하려는 동적 URL로 사람들을 강제로 되돌립니다.

+1

같은 문제가 발생했습니다. 나는 아직도 해결책이 없다. 하지만 당신의 솔루션은 너무 복잡하다고 생각합니다. –

관련 문제