なぜ semrushbot と ahrefsbot はデフォルトでブロックされるのですか?

これを試してみましたか(ただし、お使いのコンテナ名に置き換えてください)?

注: これは管理 UI でも設定可能です。

# docker exec -it socket-only bash
root@socket-only:/# rails c
[1] pry(main)> SiteSetting.blocked_crawler_user_agents
=> "mauibot|semrushbot|ahrefsbot|blexbot|seo spider"
[2] pry(main)> SiteSetting.blocked_crawler_user_agents = ""
=> ""
[3] pry(main)> SiteSetting.blocked_crawler_user_agents
=> ""
[4] pry(main)> 

参考:

参考:

  def self.allow_crawler?(user_agent)
    return true if SiteSetting.allowed_crawler_user_agents.blank? &&
      SiteSetting.blocked_crawler_user_agents.blank?
...
...

コードからわかる通り、これら 2 つのサイト設定を「blank」に設定すれば、ブロックは行われません。

  • SiteSetting.allowed_crawler_user_agents
  • SiteSetting.blocked_crawler_user_agents

ただし、変更しないことを強くお勧めします。Discourse コアでデフォルトでブロックされているこれらのボットは robots.txt を尊重しないためです。しかし、これはあなたのサイトですので、ご自由に設定してください。コアでブロックされているには明確な理由があります。

その上で、Discourse では UI の SiteSettings を使用してこれらのボットを「ブロック解除」するオプションを提供しています。