Files
sm-seo-plugin/config/config.yaml
Jakub Zych c2b61bf8e9 feat: crawler finds a page with two H1 headings and stores the issue (tracer)
- golem15_seo_crawls, crawl pages, links, issues and ignores (P33-37)
- classes/crawl: fetchguard client on the site host and its www twin,
  sitemap index and robots.txt seeds, two workers with a delay, limits
- h1_missing and h1_multiple with the P33-38 fix route
- POST /_seo/api/v1/crawls queues the golem15.seo.crawl job; GET /issues
  answers the stored issues with id, severity, source, fix, found_at,
  ignored and crawl_id
2026-11-04 15:05:45 +01:00

54 lines
2.4 KiB
YAML

# golem15.seo defaults, read as golem15.seo.<key>.
#
# site_url is the public origin of the site (for example
# https://example.com). Canonical, og:url and every other absolute URL the
# resolver answers start with it; when it is empty, app.url is used. The
# request's Host header is never used.
site_url: ""
#
# unprefixed_locale names the locale whose public URLs carry no locale
# prefix (for example pl on a site whose English pages start with /en).
# Empty leaves the choice to each content type.
unprefixed_locale: ""
#
# notfound_token is the shared secret the frontend server sends as
# "Authorization: Bearer <token>" with each 404 report to
# POST /_seo/api/v1/notfound. Empty turns the endpoint off (it answers 404).
notfound_token: ""
#
# notfound_max_rows caps the 404 log; new addresses beyond it are dropped,
# with one warning an hour.
notfound_max_rows: 10000
#
# robots_sitemaps lists the sitemap addresses robots.txt names, one
# "Sitemap:" line each, made absolute on the site URL. Unset, robots.txt
# names the sitemap plugin's index (its site address plus /sitemap.xml);
# the per-type files are never listed, the index names them. Set it only
# to name other sitemaps:
# robots_sitemaps: ["/sitemap.xml"]
#
# route_report_token is the shared secret the frontend server sends as
# "Authorization: Bearer <token>" with its route report to
# POST /_seo/api/v1/registry/routes (the page registry). Empty uses
# notfound_token; both empty turn the report off (it answers 404).
route_report_token: ""
#
# og_locales maps locale codes to their og:locale values (the resolve
# answer's seo.og.locale and locale_alternates). Codes not listed use
# pl_PL, en_US and de_DE for pl, en and de, else the language with its
# region (pt-BR: pt_BR) or the language doubled (fr: fr_FR):
# og_locales: {pl: pl_PL, en: en_GB}
#
# search_url is the site search address with the {search_term_string}
# placeholder, for example /szukaj?q={search_term_string}. When set, the
# WebSite node of the JSON-LD graph carries a SearchAction. Empty means no
# SearchAction:
# search_url: "/szukaj?q={search_term_string}"
#
# crawl_trusted lets the site audit's crawler fetch plain http addresses
# and addresses inside the network (a staging or local site). Without it
# the crawler fetches only https addresses of the site host and its www
# twin, and refuses private addresses. Only config (or the environment,
# SUMMER_GOLEM15__SEO__CRAWL_TRUSTED) sets it, never a setting or MCP.
crawl_trusted: false