複数の市場と複数の言語を備えたウェブサイトがあり、コンテンツの重複を避けるために canonical を使用しています。
geoip マッチング スクリプトを使用して、ユーザーの IP を調べて市場であると推測される場所にユーザーをリダイレクトします。
Facebook のリンクをサイトに追加しようとすると、問題が発生します。Facebook は、ページ URL の代わりに正規の URL をクロールし、geoip リダイレクトが原因で間違った市場にリンクします。
例: Url /nl-nl/nl/locator canonical /nl-nl/global/locator
en = 言語 fi = 市場/国
新しいユーザーが /nl-nl/global/locator にアクセスすると、IP を確認し、市場に言語が接続されている場合は、IP が対応する市場にユーザーをリダイレクトしようとします。
ここまでは順調ですね。
問題は、Facebook クローラーが、リンクを作成しようとしている人とは異なる IP を持つ /nl-nl/global/locator にやってくる新しい訪問者と見なされるため、その言語のみが使用されない限り、同じ市場とリンクを取得できないことです。ある市場でユーザーが同じ国にいない場合。内容は同じですが、市場が間違っています。/nl-nl/nl/locator の代わりに、Facebook の投稿は en /nl-nl/be/locator にリンクしています
基本的に、Facebookに正規を無視して指定されたURLを使用してもらいたいのですが、これが可能かどうか、またはこれを解決する正しいパスかどうかはわかりません。