トピックURL内の各返信の/2、/3、/4などのリンクを削除する

いいえ、/8 はトピックと同じではありません。/8 は 8 番目の投稿を指し、タイムスタンプは 8 番目の投稿に対応します。

?page=2 のバリアントと実際の投稿を比較すると、同じタイムスタンプが得られます。
例:

wget -q -O - https://meta.discourse.org/t/topic-list-previews-legacy/101646/959|grep published_ti

<meta property="article:published_time" content="2020-05-09T04:29:46+00:00" />
wget -q -O - https://meta.discourse.org/t/topic-list-previews-legacy/101646/?page=2|grep published_ti

<meta property="article:published_time" content="2020-05-09T04:29:46+00:00" />

そのようです:Incorrect or failing oneboxes for links to other discourse instances - #14 by techAPJ

「いいね!」 3

時間情報を削除しろとは言っていませんが、最初の投稿の「機械可読」タイムスタンプのみを送信する方が良いということです。検索結果でページをランク付けする観点から見ると、フォーラムのトピックは基本的に多くのコメントが付いた記事(最初の投稿)です。コメントがいつ作成されたかは、検索エンジンにとって重要ではありません。

編集:コメント(ページ全体ではなく)の日付をGoogleに渡す別の方法は、schema.orgマークアップです。

はい、/8は8番目の投稿を指しますが、ボットの観点からもGoogleの観点からも、それは全く同じコンテンツとURLです。Googleに/8が検索結果でトピックと全く同じように扱われるべきであることを知ってほしいのであれば、サイトはおそらくそれらが異なるという意図的なシグナルを送信すべきではありません。人間ユーザーだけがタイムスタンプが異なることを知る必要があり、その情報はページ上のテキストに表示されます。

もしGoogleの誰かがサイト定義の正規URLをオーバーライドする決定を下さなければならない場合、その例外の1つは「意図的なメタデータ内の2つの異なるタイムスタンプは異なるページを意味する――したがって正規URLをオーバーライドする」のようなものになるかもしれません。

プログラマーは、そのものに遭遇した経験がない限り、すべてのエッジケースを考えるのが難しいことがよくありますが、Googleのプログラマーにとっては、同じページに2つの異なるタイムスタンプが存在する可能性があるとは想像もつかないかもしれませんが、Discourseユーザーにとってはそれが起こりうる理由を理解するのは簡単です。

私は以前、Googleからサイトの禁止を解除することが仕事の一部だった会社で働いていました。(彼らは何も不正なことはしていませんでしたが、技術的な問題がありました。)Googleのランキング技術がどのように機能するかを誰も正確に知らず、それが定期的に変更されるため、出発点は検索エンジンのように考え、機械にとって曖昧または混乱を引き起こす可能性のあるものをすべて削除することでした。何がうまくいったのか正確に言うことはできませんでしたが、そのようなことを体系的に修正するうちに、しばらくするといつもうまくいきました。

「いいね!」 5

これは完了しています。この実験的な機能を有効にしたい場合は、非表示のサイト設定 SiteSetting.allow_indexing_non_canonical_urls の値を切り替える必要があります。

結果を共有してください。

「いいね!」 8

私には完全に理にかなっています。

はい、はい、そしてはい。よく表現されています。

「いいね!」 3

Search engines now blocked from indexing non-canonical pages を参照してください

「いいね!」 9

現在、Googleは正規URLを正しく使用しています。
これはGoogle Search Consoleの「インデックス」→「カバレッジ」→「正規タグが適切に設定された代替ページ」レポートで確認できます。

正規タグが適切に設定された代替ページについて:
「このページは、Googleが正規として認識しているページと重複しています。このページは正規ページを正しく参照しているため、対応は不要です。」 :slight_smile:

「いいね!」 4

各返信の /X リンクが SEO にどのように影響するかは全く分かりませんし、一般的に Google の気まぐれに媚びへつらうことは避けています。しかし、実用的な観点から見ると、私の Discourse フォーラムでは、多くの長期トピックで新しい返信が Google に認識されていませんが、ほとんどの新しいトピックはすぐにインデックスされます。そして、新しい返信がインデックスされる場合、リンクは特定の返信ではなく /XXXX?page=YY に飛びます。それが SEO に良いのかどうかは全く分かりませんが、特定のものを探している人間ユーザーにとっては間違いなく良くありません。

このトピックはしばらく沈黙していました。好奇心から質問ですが、この実験的な機能を試した方はいらっしゃいますか?2年以上経過した今、これがまだ実験段階と見なされているのか、それともこの問題が解決されたと確認できる方がいるのか、ぜひ知りたいです。

RGJさんが21年11月に行ったことと同様に、Discourseを使用している大規模な公開フォーラム(Python)を見つけ、返信が多いトピックをGoogleで検索して、同じトピックからの多数の個別の返信が表示されるかどうかを確認しました。

幸いなことに、Googleでは結果に個別の返信のリストは表示されませんでした!結果はトピック自体と、それが属するカテゴリのみでした!これは素晴らしい兆候です!

ただし、RGJさんが21年11月に行ったのと同じ検索をすると、この特定の検索では問題がまだ存在します。

また、このDiscourseコミュニティフォーラムの別のトピックで新しいテスト検索を実行したところ、同様の問題が見つかり、同じトピックから複数の結果が返ってきました。

この問題がすべてのDiscourseフォーラムで常に存在するわけではないのは素晴らしいことですが、Pythonフォーラムでは解決されたのにDiscourseフォーラムでは存在する理由が理解できません。

この問題を解決する方法について、何かアイデアはありますか?

NodeBBからDiscourseへの既存フォーラムの移行を検討していますが、その前に、ドメインにSEOの悪夢を引き起こさないように解決策があることを知る必要があります。

「いいね!」 4

その検索ではトピックへのリンクが少数返されますが、トピックには58件の投稿があるため、/nn URLがすべてインデックス登録されていれば58件の個別の結果が表示されるはずです。スパイダーは、他の投稿でトピック内の投稿へのリンクを見ているため、それらの個々のページをインデックス登録しているのでしょうか?

とはいえ、/nnを無効にすることは私のフォーラムにとっては悪夢となるでしょう。問題の解決策についての長い議論が含まれることがよくありますが、その中には「これが機能する」という投稿と、数投稿後に「ああ、そうではない」という投稿が含まれることがあります。将来、他の誰かが同じ問題を抱えたときに、実際の「修正」投稿を参照することがよくあります。回答がどこかに含まれているページに人々を誘導することしかできない場合、それは誰の役にも立たないでしょう。

そして、はい、Discourseには解決策を強調表示する方法があるかもしれません(たとえば、Solvedプラグインなど)が、私のフォーラムには22年間の投稿があり、そのうち最後の12か月分のみがDiscourseで作成されました。

「いいね!」 3

セスさん、こんにちは!
私も現在、自分のプロジェクトで同じ問題に直面しています。
ページネーションのため、1つのページに複数のURLがあります。

この記事が参考になると思います。
このコードを使って、ページネーションされたすべてのページを正規のページにリダイレクトすることに成功しました。

Discourseでページネーションされたすべてのページを正規ページにリダイレクトするために、そのコードを.htaccessファイルに入れましたか?

DiscourseはApache2を使用していません。Discourseの前面でリバースプロキシとして使用することはできますが、それは最適とは程遠いです。

そして、このトピックは全く理解できません。そのURL構造はSEOとは何の関係もありません。しかし、おそらく私が理解していないことが理由かもしれませんが、私のフォーラムはまだかなりのSEO価値を持っていますが、それはコンテンツから来ています。

「いいね!」 3

ここでの問題は、クロールバジェットだと思います。

それも違います。