SEOとユーザビリティのためのHTTPSのベストプラクティス


8

http://example.com一般公開とユーザー認証時に表示できるページを考えてみます。次に、ユーザーがWebサイトにログインするときに、すべてのページでHTTPSを有効にするとします。ただし、ユーザーがログインしている場合のみです。ページが、ログインしているすべてのユーザーに対して有効にhttp://example.comなりhttps://example.comます。ログインしたユーザーがあなたのページを気に入って、ブログの投稿やソーシャルメディアのウェブサイトからリンクすることにした場合、HTTPSバージョンのURLを使用する可能性が高くなります。

SEOの観点から、2つのURL間のコンテンツの重複問題を回避するための戦略は何ですか?

ユーザーがHTTPS URLに到達したが、ログインしていないか、アカウントを持っていない場合はどうなりますか?HTTPバージョンにリダイレクトする必要がありますか?もしそうなら、あなたはそれをどのように扱いますか?

私の直感は、公開とログインの両方で表示できるすべてのページについて、最初にユーザーがログインしているかどうかをページが検出する必要があるということです。ログインしている場合、HTTPSのままか、HTTPバージョンからHTTPSへの302リダイレクトを使用します。ログインしていないユーザーがHTTPSバージョンのURLに到達した場合、HTTPバージョンへの301リダイレクトを使用します。ただし、よりエレガントで効果的なソリューションを歓迎します。

編集:ユーザーがログインしている場合、すべてのURLはHTTPS(または少なくともオプション)であると想定していましたが、もう少し調査を行ったところ、おそらくその想定は間違っていました。私が人々がそれを実装しているのを見る方法は、機密データを送受信するページに対してのみHTTPSを有効にすることです:ログイン、ショッピングカートのチェックアウト、ユーザープロファイル管理など。どのモデルが最適かを調べようとしています。

どうやら、Google Mailでは、ユーザーのプロファイルの設定を通じて、すべてのページでHTTPSを使用するかどうかをユーザーが選択できるようになっています。これは確かにオプションですが、すべての認証状態で公開されているページの動作に対処する必要があります。

私は他の人が使用するコンテンツ管理システムを構築しているので、正しく理解する必要があります。サイトの所有者はどの設定を使用できる必要がありますか?この時点で、各ページ(SSLで保護されているかどうかに関係なく)を細かく制御し、サイト全体を制御することを考えています。しかし、人々がすべての問題を理解していなくて、最終的にセキュリティ問題を引き起こす可能性がある場合、そのレベルの制御を与えることは間違いかもしれません。それがおそらく、最初の問題です。適切な制御レベルとインテリジェントデフォルトとは何ですか?2つ目は、ユーザーに対するページの動作です。SEOの観点からは、上記で説明したプロセスか、rel="canonical" (推奨されるjmbのように)機能しますが、安全でシームレスになるようにページの動作を詳しく調べることも不可欠です。

回答:


6

調べてみてください<link rel="canonical" />http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.htmlをご覧ください。コメントで、Googleの誰かがhttp / httpsの問題に使用できると言っています。

警告:<link rel="canonical" />Google、Yahoo、Bing以外の検索エンジンでサポートされているかどうか、またどの程度サポートされているかはわかりません。他のエンジンがサイトにとって重要である場合は、それらのFAQを確認してください。

ユーザーの観点から:httpからhttpsにログインしているユーザーをリダイレクトすることは安全ではありません(シームレスなプロセスを作成したいと私が正しく理解している場合)。サイトに到着した時点(リダイレクトの前)で、httpを介してセッションCookieを転送し、セッションハイジャックに対して脆弱にしました。このようなユーザーは、httpsページから再度ログインする必要があります。

ユーザーがhttps経由で到着し、ログインしていない場合:状況(サイトのサイズ、予想されるトラフィック量、予想される発生回数)によっては、単にhttpsを維持できる場合があります。参照してくださいサイト全体のためにHTTPSをして/programming/174348/will-web-browsers-cache-content-over-https(一部は、あなたのケースで)HTTPS上のサイトを実行する上での議論のために。

更新:

適切な制御レベルとインテリジェントデフォルトとは何ですか?

適切な管理レベル:

  • セキュア(httpsがオン、ログインページとそこからのすべてを含む)

そして

  • 安全でない(httpsなし)。

あなたが「正しく理解したい」というのなら、中間的な根拠はありません。http://paulmakowski.wordpress.com/2009/07/20/http-post-https-bad-idea/および/programming/274274/is-it-secure-to-submitも参照してください-from-a-http-form-to-https

デフォルト:顧客が誰であるかによって異なります。


これもオプションとして考えていました。私がそれについて確信が持てなかった理由は、それがSEOの問題に対処する一方で、ページがユーザーに対してどのように振る舞うかについては対処していないためです。何かご意見は?
Virtuosi Media

良い点、私は私の答えを更新しました。
JMB

各ページの読み込み時にセッションを再生成すると、セッションの乗っ取りの問題が解決しますか?
Virtuosi Media

ありがとう。もう1つの質問:ユーザー登録を受け入れる場合、SSL証明書を必要とするCMSをどのように表示すると思いますか?
Virtuosi Media

ターゲットオーディエンス次第だと思います。銀行は、財務情報を含まない非中核分野でさえ、それを要件と見なします。予算上の非営利団体は、おそらくコストと追加の複雑さを嫌うでしょう。
jmb

2

SSLページにはSEO戦略はありません。キャッシングの定義の一部はこれです:

If the request is authenticated or secure (i.e., HTTPS), it won’t be cached.

参照:キャッシングチュートリアル

したがって、これがランキングを損なう可能性のある非SSLページとの重複を防ぐために、SSLに依存するページを完全に異なるURLに置くことです。

皮肉なことに、私は検索エンジンが実際にHTTPSのURLとのリンクを保存して保持するのを見てきました。これは通常発生することとは逆ですが、ページがログイン領域である場合、ホームページである場合、またはキャッシュを可能にするためにキャッシュプラグマが書き換えられている場合に発生します。あなたのページは通常PageRankにドロップするので、可能であればこれを避けます。


1
Talviに感謝しますが、私の質問はブラウザーのキャッシュではなく、誤解されていると思います。検索エンジンはhttpsページをクロールしてインデックスに登録するため、誰かがhttpsバージョンにリンクするとコンテンツの重複問題が発生することになります。URLを変更しても、httpとhttpsは既に検索エンジンから見て2つの異なるURLであるため、役に立ちません。異なるURLを使用すると、PageRankを効果的に分割できます。私の質問の中心は、コンテンツの重複問題を回避するための戦略をどのように開発できるかでした。残念ながら、私はキャッシュリンクがこれを解決するのに役立つとは思いません。
Virtuosi Media

Virtuosi Mediaに同意します-通常、検索エンジンはhttps://-URLに問題はありません。
John Mueller

1
@virtuosiあなたは私をそこに連れて行った。多分鈍いオブジェクトで検索エンジンをBludgeon?
Talvi Watia

2

302リダイレクトでは検索ランキングが転送されないため、サイトを大量に使用すると検索ランキングが失われる可能性があります。

301はブックマークの定義を変更できます。ユーザーを常に301にしたくはありません。

また、ユーザーがすぐにhttpsバージョンに戻ることができるように、httpバージョンにログインフォームが含まれていることを確認してください。

ここでの大きな疑問は、httpでデータを表示できる場合、なぜhttpsバージョンがあるのでしょうか。まだ存在しないhttps暗号化でどのデータを隠していますか?

httpsメンバー領域を作成したり、httpページからのhttps urlにフォームを投稿したり、httpとhttpsの両方にサイト全体を含めることを含まない他の多くのオプションを使用したりできます。

それ以外は、あなたのアイデアは機能しているように見えますが、Googleや他のWebサイトがどのように動作するかに関する内部情報はありません。これがランキングにどのように影響するかについては、本当に確信が持てません(そのようなエッジケースの場合もあります)。 Googleがアルゴリズムを更新するたびに大幅に変更されます)。


ユーザーがログインしている場合、すべてのURLはhttpsであると想定していたと思いますが、もう少し調査を行ったので、おそらくその想定は間違っていました。私が人々がそれを実装しているのを見る方法は、機密データを送受信するページに対してのみhttpsを有効にすることです:ログイン、ショッピングカートのチェックアウト、ユーザープロファイル管理など。どのモデルが最適であるかを理解しようとしています。私は他の人が使用するコンテンツ管理システムを構築しているので、正しく理解する必要があります。
Virtuosi Media
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.