Problem/Motivation
With Include all published content, every published node that the anonymous user may view is a start URL. Pages among them that return an error and that no page links to are left out of earkiv-broken-links.csv, since they are not broken links, and out of earkiv-unlinked-pages.csv, since they are not in the archive. The only trace is a count in the Drush output and lines in HTTrack's own URL log (hts-cache/new.txt). The editors who should fix the pages never see them.
These are published pages that cannot be reached, which is worth knowing. In a full archive of a Drupal 11 site, two pages had a + in their path alias, such as /grants/erasmus+/assessment. Drupal decodes + in the path as a space, so the alias only works as %2B, and HTTrack turns %2B back into + before it fetches the URL. Both pages returned 404 and were missing from the archive without being listed anywhere. Other causes can be a module that denies anonymous access to a published node (403) or a page that fails (500).
Proposed resolution
Write the published pages that returned an error, and that no page links to, to earkiv-published-errors.csv in the root of the archive, with the columns nid, langcode, type, title, url and status (the HTTP status, or a negative HTTrack error code). Mention the file in the Drush output and in the README next to the other two lists.
Pages that some page links to stay in earkiv-broken-links.csv as before.
Remaining tasks
- Implement and test.
- Review.
User interface changes
None. The archive gets the file earkiv-published-errors.csv when published pages return an error.
API changes
None.
Data model changes
None.
AI-Generated: Yes (Used Claude Code to find the pages in a test archive and draft this issue.)
Issue fork earkiv-3636905
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #4
thomas alsén commentedMerged into 1.0.x!