Flowpane / Docs
In this section

How Flowpane works with Drupal

Drupal core deliberately does little on its own for search engines: robots.txt arrives as a file, sitemaps, metatags and automatic URL aliases come from contributed modules, and caching can sit in Drupal, the web server or a CDN. That flexibility means two Drupal Sites can answer the same question in entirely different ways. Flowpane examines what each Site actually delivers, and the module adds Drupal's own account of which component is responsible, so a public result can always be traced to its source.

For the general model, read How Flowpane works with your CMS.

robots.txt: a scaffolded file or a module

Drupal ships a physical robots.txt in the web root, placed there by Drupal's Composer scaffolding. Some Sites replace it with the RobotsTxt module, which serves the rules from Drupal's configuration instead:

Request for /robots.txt
 |
 +-- Web server or hosting rule answers?        -> that response is served
 +-- robots.txt file in the web root?           -> the file is served,
 |                                                 whatever the module says
 +-- no file, RobotsTxt module enabled?         -> the module's rules are served
 |
 +-- A CDN or reverse proxy can serve an older copy.

Because the file comes from scaffolding, a routine composer update can put Drupal's default file back over local edits unless the project's scaffold settings exclude it. The module reports whether the file exists, whether scaffolding manages it, and whether the RobotsTxt module holds its own rules, so a surprising public response can be explained at once.

curl -s https://example.com/robots.txt

XML sitemaps come from modules

Drupal core has no XML sitemap generator. The two common modules work differently:

Module Usual public address Notes
Simple XML Sitemap /sitemap.xml Can define several sitemap variants, each with its own address and content types
XML Sitemap /sitemap.xml Builds sitemap files from its own link records, refreshed in the background
A physical file Any address A file placed in the web root; it stays fixed until someone replaces it

The module reports which sitemap modules are enabled and how many sitemaps or variants each defines. Flowpane then reads each sitemap from the public web and parses it independently.

Addresses and URL aliases

Every Drupal page has an internal path, such as /node/42, and usually a friendlier URL alias, such as /about-us, created by hand or automatically by Pathauto. Both normally reach the same content, so the alias a sitemap lists and the address a page declares as canonical matter. The Redirect module can send old aliases to new ones when an alias changes.

The module reports each published node translation with its internal route and its alias, so Flowpane can compare the addresses Drupal intends with the addresses sitemaps list and the public Site serves.

Languages and translations

On a multilingual Site, each translation usually has its own language prefix or domain and its own alias. The module reports the Site's languages and each published translation separately, so a page that is published in one language and not another is visible as exactly that.

Indexing directives come from Metatag

Drupal core does not print a robots meta tag on content. Where a Site uses the Metatag module, its defaults, content type settings and per-page overrides decide whether a page carries noindex or nofollow; themes and the web server can add their own directives too. The module reports whether Metatag is present, so Flowpane knows where indexing intent is set, and the public page remains the final answer:

curl -s https://example.com/about-us | grep -i 'name="robots"'
curl -sI https://example.com/about-us | grep -i 'x-robots-tag'

Caching and delivery

Drupal's Internal Page Cache serves stored pages to anonymous visitors, the Dynamic Page Cache stores page fragments, and many Sites add a reverse proxy or CDN in front. Any of them can serve an older copy of a page or sitemap after a change. The module reports which Drupal caches are active; Flowpane records the response crawlers actually receive, including redirects.

What Flowpane observes on every Drupal Site

Without a connection, Flowpane checks the public robots.txt, the sitemaps it can discover, the governance files and sampled pages, and records Results, Changes and Findings from what the public web serves. This is identical for every CMS.

What the module adds

Native to Drupal Added by the Flowpane module
A scaffolded robots.txt file or the RobotsTxt module Reports which one serves robots.txt, whether scaffolding manages the file, and when its content changes
Simple XML Sitemap or XML Sitemap Reports which sitemap modules are active and how many sitemaps or variants they define
Internal paths, URL aliases and Pathauto Reports each published translation's route and alias
Metatag Reports whether Metatag controls indexing directives
Languages and translations Reports the Site's languages and each published translation separately
Publishing workflow Records content as it is published, updated or unpublished
Governance files such as security.txt, llms.txt and ads.txt Reports whether each is a physical file or served by a Drupal route, and which module provides it
Drupal, PHP and database versions Reports the environment, with the installation profile and caches in use

The module sends counts, addresses, dates and fingerprints of configuration; your content stays on your Site.

Reported and verified on Drupal

Flowpane shows the module's report and the public observation separately, each with its own date. When the two disagree, the gap is the useful part:

  • If the RobotsTxt module holds rules but the public file differs, a physical robots.txt in the web root is answering first.
  • If a published translation is missing from the sitemap, the sitemap module's settings for that language or content type are the place to look.
  • If Metatag says index but the public page carries noindex, the theme, another module or a header is adding it.

Worked examples

A Composer update restores the default robots.txt. A team customises robots.txt, then a routine composer update restores Drupal's default file through scaffolding. The module reports that the file changed and that scaffolding manages it; the public check records the Change with before and after content, and the fix is a one-line scaffold setting rather than repeated hand edits.

An alias changes. An editor renames a page and Pathauto generates a new alias. The module reports the new alias for that translation, Flowpane checks the public Site, and the evidence shows whether the Redirect module now sends the old address to the new one.

Two sources of rules. A Site enables the RobotsTxt module but never removes the physical file. Changes made in the module's settings have no public effect; the module's report shows both sources at once, so the team can agree which one should own robots.txt.

Environments

Requirements are listed on Flowpane for Drupal.

Flowpane for Drupal · Managed changes · Extensions Hub

Reading article

Copy manually

Automatic copying is unavailable. The text is selected; use your device’s copy command.