Overview & Philosophy
Web preservation is not merely downloading HTML files. The early web (1990–1999) relied on a fragmented ecosystem of deprecated protocols, frame-based layouts, server-side includes, and client-side applets that modern browsers no longer render natively. Our methodology prioritizes non-destructive extraction, contextual asset reconstruction, and cryptographic integrity.
We treat every archived URL as a historical artifact. Our crawlers are designed to mimic legacy user agents (Netscape Navigator 3.0, Internet Explorer 3.0, Mosaic) while applying modern checksumming and storage techniques.
The Crawling Pipeline
Our preservation workflow follows a strict 5-stage pipeline designed to maximize recovery rates while minimizing server load.
Seed Discovery & URL Enrichment
We ingest seed lists from Wayback Machine exports, AltaVista caches, WebCite references, and community submissions. Each URL is enriched with historical DNS records and WHOIS snapshots to identify orphaned domains before crawling begins.
Legacy Protocol Negotiation
Instead of modern HTTP/1.1+ stacks, our crawlers use configurable protocol handlers that can negotiate HTTP/1.0, FTP, Gopher, and WAIS gateways. We respect era-specific `robots.txt` rules and honor legacy `NoCache` headers.
Non-Blocking Extraction
Documents are fetched asynchronously with strict timeout policies. We capture the exact byte response, including malformed HTML, inline CSS, and table-based layouts, without auto-correcting syntax or injecting modern DOCTYPEs.
Asset Reconstruction
Relative paths are resolved against the origin server. Images (GIF89a, early JPEG), MIDI backgrounds, and `.cgi` endpoints are fetched. When dynamic content fails, we fall back to static snapshotting and mark the asset as `PARTIAL_RECOVERY`.
Cryptographic Fingerprinting & Storage
Every payload is hashed using SHA-256. Duplicates are deduplicated at the byte level. Metadata (User-Agent, Response Headers, Timestamp, IP Geolocation) is attached, then packaged into WARC 1.1 containers for immutable storage.
Legacy Technology Handling
The early web lacked standardized CSS and relied heavily on proprietary implementations. Our pipeline includes specialized parsers for era-specific technologies.
📐 HTML 2.0/3.2 & Framesets
We preserve `
🎵 MIDI & Background Audio
`.mid` and `.rmi` files are extracted and stored with their original `BGSOUND` or `
⚙️ CGI-BIN & Server-Side Includes
Dynamic endpoints are probed with safe, read-only payloads. We capture the rendered HTML output alongside the raw CGI script when publicly accessible, noting any session-dependent behavior.
🖼️ GIF89a & Tiled Backgrounds
Lossless GIFs with palette limitations are stored unmodified. We document color depth, dithering methods, and repeating patterns to assist future emulators in accurate reconstruction.
Ethics & Rate Constraints
We operate under a strict preservation ethics framework designed to respect the fragility of aging servers and the rights of original authors.
- Polite Crawling: Default delay of 2.5s between requests per host. Adaptive backoff triggers on `503` or `429` responses.
- Legacy Robots Compliance: We parse pre-1994 `robots.txt` variants and honor `META` `ROBOTS` tags common in the 90s.
- No Destructive Probing: We never submit forms, trigger transactions, or execute write-heavy CGI scripts.
- Opt-Out Protocol: Domain owners can request immediate archival cessation and deletion via our takedown portal. Requests are processed within 48 hours.
Verification & Fingerprinting
Archival integrity is non-negotiable. After extraction, every page undergoes a multi-layer verification process.
- Byte-Level Checksumming: SHA-256 hashes are computed for HTML, assets, and combined WARC records.
- Structural Diffing: We compare parsed DOM trees against known legacy reference sets to detect silent corruption or encoding shifts.
- Rendering Validation: Pages are rendered in headless Netscape 3.0/IE 3.0 emulators. Screenshots are stored alongside the source for visual regression tracking.
- Chain of Custody Logging: Every crawl event is timestamped with NTP-synchronized servers and signed with our preservation key.
Standards & Open Formats
We align our methodology with international digital preservation standards to ensure long-term accessibility and interoperability.
- WARC 1.1: Web ARChive format for bundling HTTP transactions.
- OAIS (ISO 14721): Open Archival Information System conceptual reference model.
- PREMIS: Preservation Metadata: Implementation Strategies for recording technical and rights metadata.
- W3C Web Archiving SIG: Active contributor to guidelines on capturing dynamic and complex web resources.
All crawling scripts, parsing rules, and validation pipelines are open-source under the MIT License. Researchers can audit our methodology or contribute era-specific handlers via our GitHub repository.