Open omgoo opened 2 years ago
I'm not sure on further investigation if this is an NCSA issue or an issue with the 1997 IA ARCs. I can't find a version of NCSA 1.5 to test my theory.
I can't find a version of NCSA 1.5 to test my theory.
That's okay, I found a copy of the old 1995 source code of NCSA 1.5 here , and an old copy of the docs sits here. Then I wrote a patch for it. Not that much has changed:
getline(..)
name collisionHere is the patch:
Now if I do something like this:
user@garage3:~/ncsa$ make start
docker run -p 8412:8412 --rm --name "oldncsa" ncsa-1.5
NCSA HTTPd NCSA/1.5.2a
Licensed material. Portions of this work are
Copyright (C) 1995-1996 Board of Trustees of the University of Illinois
Copyright (C) 1995-1996 The Apache Group
Copyright (C) 1989-1993 RSA Data Security, Inc.
Copyright (C) 1993-1994 Carnegie Mellon University
Copyright (C) 1991 Bell Communications Research, Inc. (Bellcore)
Copyright (C) 1994 Spyglass, Inc.
And it's ready to serve requests. I'm attaching a zip here with the source already patched and all aforementioned files included.
In order to build the docker image you'll have to run make build
.
I've added a PR that fixes the issue in replaying webarchives that were created from servers running NCSA 1.5.1. I'm not convinced this is the best solution but it does fox our issue and allow the archive content to replay: https://github.com/webrecorder/warcio/pull/153
Here is an interesting one for you Ilya.
The original NCSA 1.5 web server responds with "HTTP 200 Document follows" rather than HTTP/1.0.
In recorderloader.py HTTP_TYPES is only looking for 'HTTP/1.0', 'HTTP/1.1'.
Modifying HTTP_TYPES to look for
'HTTP/1.0', 'HTTP/1.1', 'HTTP'
does allow the request web page to replay. I'd add this as a PR but I doubt this is the best idea.Here is the header from the ARC file in question:
This is the url in question but you'll only see a 500 error:
https://webarchive.nationalarchives.gov.uk//ukgwa/19970616061332/http://www.open.gov.uk:80/ofsted/nursery/rp511200.htm
I'll share the ARC file with you if I can get permission to release it.