我在一个棘手的情况我不知道如何解决跌跌撞撞。避免图形API重定向循环,但重定向到URL猛击
我使用Facebook的图形API来跟踪我的web应用程序的文章共享和显示计数器到我的用户。该API要求我指定og:url
属性以了解在哪个URL下聚合计数。
我的URL结构如下:
.../posts/id/slug
嵌塞是纯粹的外观和可选。如果以后改变(这有时会发生),我要确保:
- 那我的用户仍然重定向到正确的页面
- 该共享计数器不复位
要满足条件1,I设置以下重定向:
A) .../posts/id --> .../posts/id/current-slug
B) .../posts/id/wrong-slug --> .../posts/id/current-slug
为了满足条件2,我指出我og:url
到slugless URL .../posts/id
,这是我nvariable。
当然但是,这将导致为Facebook图示器重定向循环,初始URL是否是正确的(当X)否(情况下Y)。
案例X:
Start: .../posts/id/slug
--> .../posts/id (Because of og:url)
--> .../posts/id/slug (Because of redirect)
--> (loop)
案例Y:
Start: .../posts/id/wrong-slug
--> .../posts/id/correct-slug (Because of redirect)
--> (back to case 1)
不知道如何解决这个问题?
我看到目前唯一的解决方法是删除重定向),但它使URL更用户/ SEO友好。
建议第二解决方案,我将禁用重定向Facebook机器人;查找字符串'在用户代理facebookexternalhit/1.0','facebookexternalhit/1.1'和'Facebot' - https://developers.facebook.com/docs/sharing/best-practices#user-agent-whitelisting – madebydavid 2015-03-17 10:55:58
如果为你工作不要犹豫,有效的答案 – jrmgx 2015-03-18 18:05:18
这一周,我会试着让你知道。感谢用户代理字符串! – Lazlo 2015-03-19 19:21:02