Oldweb.today (OWT)는 에뮬레이션 된 웹 브라우저를 웹 아카이브에 연결하는 시스템으로, 사용자는 오늘날 이전 웹을 탐색 할 수 있습니다!

(스크린 샷 : https://oldweb.today/?browser=ns3-mac#19960101/http://geocities.com/)
Oldweb.today는 사용자가 브라우저에서 완전히 실행되는 여러 에뮬레이션 된 브라우저 중 하나와 플래시 에뮬레이터를 사용하여 웹을 탐색 할 수 있습니다!
URL을 입력하고 보관 날짜를 선택한 다음 시작할 브라우저를 선택하십시오!
사용자는 라이브 웹, 현재 웹 사이트를 탐색하거나 웹 아카이브 / 웨이 백 머신에 연결하고 아카이브에서 직접 콘텐츠를로드 할 수 있습니다.
최신 브라우저 목록은 Oldweb.today를 참조하십시오. 목표는 웹 역사상 Common (Netscape, IE 등)뿐만 아니라 다른 덜 알려져 있지만 주목할만한 브라우저를 지원하는 것입니다.
지원되는 브라우저를보고 싶거나 브라우저를 제공하려면 문제를여십시오!
Oldweb.today에서 사용할 수있는 대부분의 Netscape 및 IE 버전에는 초기 버전의 Java가 설치되어 있습니다.
Java 1.0은 Netscape 3에서 작동하고 Java 1.1은 Netscape 4 (Windows)와 IE 5 및 IE 6에서 작동해야합니다.
Netscape 및 IE에는 최신 지원 버전의 플래시가 설치되어 있어야합니다. Mac 브라우저의 경우 일반적으로 충격파 4를 의미합니다.
IE 6 브라우저에는 Win98에서 실행되는 최신 플래시 버전 인 Flash 9가 있습니다.
Oldweb.today는 기본 브라우저를 사용하여 Ruffle Flash Emulator를 직접 지원합니다.
이 모드에서는 Ruffle Emulator를 활성화하여 라이브 또는 보관 된 웹 사이트를 탐색 할 수 있습니다.
이 현재 버전은 에뮬레이터를 사용하여 Windows, MacOS 및 전체 네트워크 스택을 사용하여 JavaScript로 전적으로 실행됩니다. 모든 것이 브라우저에서 실행되며 OldWeb.today는 정적 사이트로 호스팅 할 수 있습니다. 외부 아카이브에 액세스하기위한 CORS 제한으로 인해 원격 CORS 프록시가 사용됩니다.
Oldweb.today 버전은 다음을 포함하여 다른 사람들이 만든 여러 가지 훌륭한 도구를 구축하고 결합하여 작동합니다.
이러한 에뮬레이터 각각은 에뮬레이션에 의해 생성 된 PICOTCP를 사용하여 서비스 개발자 Rafael Gieshke 및 Klaus Rechhert를 사용하여 사용자 정의 JavaScript 네트워크 스택을 지원하도록 수정되었습니다 (여기 및 여기).
이 시스템은 추가 수정 및 Oldweb.today에 연결되어 에뮬레이션 된 브라우저에서 HTTP 연결을 종료하고 Live Web 또는 Archive 소스에 대한 일반 fetch() 요청의 HTTP 데이터로 응답하기 위해 연결되었습니다. 현재 GET 요청 만 지원되며 표준 컨텐츠 길이 및 컨텐츠 유형 헤더 만 다시 프록시됩니다.
각 브라우저는 HTTP 프록시를 통해 특수 IP http://10.0.2.2/ 에 연결되도록 구성되어 JS HTTP 서버가 실제 홈페이지로 리디렉션됩니다. 이러한 방식으로 에뮬레이터 이미지에는 실제 페이지로 해결되는 고정 된 홈페이지가 있습니다. 마찬가지로, 페이지에 설정된 타임 스탬프는 JS 프록시 서버에서 아카이브에서 지정된 날짜를로드하는 데 사용됩니다.
이를 통해 에뮬레이션 브라우저에서 홈페이지를 다시로드하여 에뮬레이터를 다시 시작하지 않고 데이터 타임 및 홈페이지 URL을 변경할 수 있습니다.
네트워크 스택 (WASM으로 컴파일)은 별도의 웹 워커에서 실행 중입니다. 바실리스크 에뮬레이터는 emscripten으로 컴파일되며 별도의 작업자에서도 실행됩니다. 그들 사이에 의사 소통하려면 sharedarraybuffer가 필요합니다. V86 에뮬레이터는 기본 스레드에서 실행되며 방송 채널 메시징을 통해 네트워크 작업자를 통해 통신합니다.
기본 모드 / ruffle 에뮬레이터의 경우 에뮬레이션 된 브라우저가 사용되지 않지만 Ruffle Emulator가로드 된 페이지에 주입되어 페이지에 존재할 수있는 플래시를 인수합니다.
Oldweb.today에는 구축 및 수정을 위해서는 노드와 패키지 관리자 NPM/YARN이 필요합니다.
로컬로 실행하려면 먼저 yarn install 로 설치하십시오
개발에 권장되는 배포 옵션은 로컬 CORS 프록시로 개발자 서버를 실행하는 것입니다. 이것은 다음과 같이 롤업 개발자 서버를 실행하여 간단히 수행 할 수 있습니다.
yarn run start-dev 이렇게하면 로컬 웹 서버 (롤업을 통해)가 시작되며 http://localhost:10001/ 을 통해 OldWeb.today에 액세스 할 수 있습니다. 로컬 프록시는 http://localhost:10001/proxy/ 에서 실행됩니다.
제작의 경우 권장 배포는 Live Web Proxy를 처리하는 CloudFlare Workers를 사용하여 실행하는 것입니다. 무료 서비스는 대부분의 사용 사례에 충분해야합니다.
이 옵션을 사용하려면 :
worker-site 에서는 wrangler.toml.sample wrangler.toml 로 복사하십시오.account_id 와 name 구성 지침에 따라 설정하십시오.yarn run publish 통해 CloudFlare 작업자 엔드 포인트에 게시하십시오. HTTP 서버를 통해 ./site 디렉토리의 컨텐츠를 제공하여 Oldweb.today를 훨씬 더 간단한 배포 인 Oldweb.today를 정적 사이트로 완전히 배포 할 수 있습니다.
그러나이 옵션에는 Live Web 또는 원격 아카이브에서로드하는 데 필요한 CORS 프록시가 포함되지 않습니다.
한 가지 옵션은 라이브 웹 및 원격 아카이브에 연결하기 위해 공개적으로 이용 가능한 CORS ANLEERDY 프록시와 함께 실행하는 것입니다.
이 프록시는 속도 제한 이므로이 옵션은 생산 배포에 권장되지 않습니다.
이 배포는 동일한 호스트에서 로컬 웹 아카이브를 실행하는 경우 (및 Live Web Access가 필요하지 않음) CORS 프록시가 필요하지 않은 경우에도 적합합니다.
이 방법을 사용하려면 :
rollup.config.js 에서 CORS_PREFIX 및/또는 ARCHIVE_PREFIX 수정하여 로컬 아카이브를 가리키십시오 (예 : 자세한 내용은 아래 참조) : const CORS_PREFIX = "" ;
const ARCHIVE_PREFIX = "/wayback/" ; yarn run build 실행하십시오
OldWeb.today는 이제 모든 정적 HTTP 서버에서 ./site/ 에서 제공 될 수 있습니다.
CloudFlare에서 실행할 때 site/assets 및 빌드 스크립트 site/dist 의 정적 자산은 별도의 CDN (DigitalOcean을 통해)에서 제공됩니다.
이 경로는 rollup.config.js 에서 CDN_PREFIX 변경 한 후 재건축하여 변경할 수 있습니다.
자산 및 스크립트는 모든 정적 웹 스토리지에서 호스팅 할 수 있습니다.
아래 로딩 경로는 rollup.config.js 의 설정을 변경하고 Rerunning yarn run build 설정을 변경하여 변경할 수 있습니다.
현재 OldWeb.today는 인터넷 아카이브의 웨이백 머신과 라이브 웹에서 직접로드하는 것을 지원합니다. 추가 / 다중 아카이브에 대한 지원이 계획되어 있습니다!
아카이브 소스는 Wayback Machine Style Unrewritten URL을 지원하는 웹 아카이브 (예 : <prefix>/<timestamp>id_/<url> 입니다. 아카이브는 반환되지 않은 컨텐츠를 지원해야합니다.
다른 웹 아카이브로 실행하려면 ARCHIVE_PREFIX 경로를 변경하여 사용하려는 Wayback Machine 인스턴스를 가리 키십시오.
동일한 도메인에서 호스팅 된 웨인백 머신에서로드하면 CORS 프록시가 필요하지 않을 수 있습니다.
예를 들어, mywebarchive.example.com https://mywebarchive.example.com/wayback/ wayback machine이 실행중인 Wayback Machine에서 OldWeb.today를 실행하는 경우 설정할 수 있습니다.
CORS_PREFIX = ""
ARCHIVE_PREFIX = "/wayback/"OldWeb.today가 다른 사이트에서 뜨거운 상태로 인한 경우 구성은 다음과 같습니다.
CORS_PREFIX = "/proxy/"
ARCHIVE_PREFIX = "https://mywebarchive.example.com/wayback/"모든 에뮬레이터 이미지는 정적 블록 스토리지 버킷 (현재 DigitalOcean)에서 호스팅됩니다. 로컬/다른 이미지 세트로 실행하려면 다음을 설정할 수 있습니다.
IMAGE_PREFIX = "https://mybucket.example.com/images` assets 및 dist 경로를 변경하려면 (CloudFlare 배포의 경우) 다음을 설정할 수 있습니다.
CDN_PREFIX = "https://mybucket.example.com/site` 가용 브라우저는 브라우저 이름, 에뮬레이터 유형, 이미지, 저장된 상태 (v86) 및 기타 옵션 또는 각 브라우저를 포함하는 src/config.json 으로 구성됩니다. config.json IMAGE_PREFIX 와 보간되어 site/assets/config.json 에서 제공됩니다.
로컬 에뮬레이터를 테스트하려면 IMAGE_PREFIX 를 사용하여 항목을 만듭니다. 자세한 내용은 config.json 참조하십시오.
서버에서 실행되는 Docker 컨테이너 및 에뮬레이터를 사용하는 Oldweb.today의 "Classic"버전은 여기에서 찾을 수 있습니다. Classic.oldweb.today 출처 : https://github.com/oldweb-today/netcapsule
Oldweb.today는 AGPL 라이센스에 따라 제공됩니다. 다른 구성 요소 (위에 나열된)는 다른 라이센스로 제공 될 수 있습니다.
자세한 내용은 통지를 참조하십시오.
기부금은 확실히 환영하지만 추가 브라우저 나 에뮬레이터를 기부하기 전에 문제를 열어주십시오.