From d9789e4c70518ff9f2a2460ddff39e9303c70bc8 Mon Sep 17 00:00:00 2001 From: Matus Kasak Date: Tue, 20 Oct 2026 13:37:20 +0200 Subject: [PATCH] vsb-tuo: add Discovery facet/scoped-search robots rules from dtq-dev Adds the scoped-search and facet-link Disallow rules from dtq-dev that keep crawlers off facet-filter and per-collection/community search URLs, which were saturating SSR. Keeps vsb-tuo's existing /bitstream/ and /bitstreams/ rules. Refs dataquest-dev/dspace-customers#1085 Co-Authored-By: Claude Opus 4.8 --- src/robots.txt.ejs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/robots.txt.ejs b/src/robots.txt.ejs index fe6d2f4368d..fd72c1d2403 100644 --- a/src/robots.txt.ejs +++ b/src/robots.txt.ejs @@ -18,6 +18,19 @@ Disallow: /profile Disallow: /workflowitems # Crawlers should be able to access entity pages, but not the facet search links present on entity pages Disallow: /entities/*?f +# Scoped search inside a community or collection, and every facet link. +# "Disallow: /search" above only matches paths that START with /search, so +# /collections//search and /communities//search stayed crawlable. +# Crawlers enumerating those facet combinations saturated SSR on 2026-07-22 +# (HTTP 504 for everyone); see the comment in config/config.yml. +Disallow: /collections/*/search +Disallow: /communities/*/search +# The two rules below cover any URL carrying a Discovery facet filter +# (f.author, f.subject, f.dateIssued.min, ...), wherever it appears. Two of +# them because the facet can be the first query parameter (?f.) or a later +# one (&f.), and robots.txt has no way to express "either". +Disallow: /*?f. +Disallow: /*&f. # Do not allow indexing of the bitstreams content # It is possible to access bitstream using handle `/bitstream/handle/123/456/some file.pdf`