ここには2つの問題があると思います:
-
Facebook共有ダイアログまたはFBでの直接URL共有のためにコンテンツを「インデックス化」する
-
ユーザーが共有リンクにアクセスした場合に、保護されたサイトにアクセスできるようにします。
私が提案する解決策は次のとおりです。
- ユーザーエージェント文字列を確認しています。 FBは、
facebookexternalhit/1.1
を含むエージェント文字列を使用します これは他の当事者によっても簡単に偽造される可能性があることに注意してください。 - リファラーに
www.facebook.com
が含まれているかどうかを確認する ユーザーが認証されていない状態でサイトにアクセスした場合
参照