WebOne - proxy for old browsers to make them Web 2.0-capable

Schedules and announcements about program releases.

WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-5-22 @ 17:16

Hi all! I'm developing a HTTP proxy server that should help older browsers to work in the modern internet. It is called WebOne.

Currently WebOne can only request pages from any modern servers (even through HTTPS connections when the browser is too old to decode server's cipher) and convert content code page from UTF-8 to system's local (should be useful for non-English users with Windows 9x). This should return possibility to see some content of webpages in retro browsers (while currently they're simply stops loading due to TLS errors).

Upd:
Also it can replace JavaScript frameworks to older versions that can work in old browsers, make redirections to Web.Archive.Org (for sites that are dead) and make WebDAV working in older clients (such as IE 5.0). With Opera 12 and Firefox 10 most of sites became usable again. Very elderly browsers like IE 2.0 also became usable because Host header (which is now required by 99% of servers) is added when using the proxy.

It's not a rendering proxy, it helps old rendering engines in displaying content of webpages using their own possibilities.

Image Image Image

The proxy server intended to be run on a modern PC with .NET Framework 4.6 or newer (probably, it should work with Mono too). To use it place a modern PC with WebOne installed and running into same LAN with an old PC (the modern PC must have access to the Internet) and set IP address or hostname of the modern PC as HTTP 1.0 Proxy in settings of a old browser on an old machine. By default the WebOne runs on port 80, but it can be changed to any other valid port.

Sources are hosted at https://github.com/atauenis/webone .
Stable binaries also available at GitHub.

Feel free to test it and report bugs. This app is open-source, so Pull requests are welcomed.
Last edited by ATauenis on 2019-7-10 @ 11:38, edited 1 time in total.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-5-26 @ 21:58

Version 0.2 has been released. It is now possible to set program's settings in the webone.conf file. Also it is now working in both Windows 7+ (.NET 4.6+) and WinXP/2003 (.NET 4.0), but if the .NET Framework version is less than 4.6 (e.g. 4.0 or 4.5), some SSL/TLS features will be unusable. Server's host name and working port are shown in window's title bar, so configuring clients makes easier.

---

May 27, 2019. 20:55 (GMT+3).
Version 0.3 has been released. Now it can downgrade js frameworks used in pages to make some scripting on modern sites working in not too old browsers (such as Firefox 3.6, IE8).

---

May 29, 2019. 14:27 (GMT+3).
Version 0.4 has been released. Fixed some bugs ("error 304" in Firefox and blank pages in Opera). Also added ability to load some content from Web.Archive.Org instead of real web.

---

May 30, 2019.
Versions 0.4.1 and 0.4.2 has been released. The server now can be started in Mono 3.2.8 and 4.6.2.7 but with some TLS problems ("Mono.Security.Protocol.Tls.TlsException: Invalid certificate received from server. Error code: 0xffffffff800b010a" or "SecureChannelFailure (The authentication or decryption has failed.)"). Also it can be compiled using MonoDevelop in Debian 9. Since 0.4.2, Release (not Debug) builds, like provided in EXE folder, are showing easier to read error messages in most cases.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-6-02 @ 20:40

Version 0.5.0 is ready.
  • Now large binaries are downloading very quickly with a working progress bar in the browser, just like downloading from the real web (btw, binary files are not modified by the WebOne if their URLs doesn't matches redirection masks in config file), so you can download Mozilla 1.7 on Windows 95 from Internet Explorer 3.0 (or probably even 1.0) just as in 2005.
  • Another change is fix of detecting of UTF-8 pages that should be converted to local code page. Previously, some of these pages were not converted and remained in Unicode. Now they can be read even in DOS.
Get it at https://github.com/atauenis/webone/tree/master/EXE .
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-6-05 @ 21:02

Version 0.6.0 is ready.
  • Added optional password authentication for proxy server. This means that the WebOne now can be runned even on public hosts, and owner should not worry that unwanted people will use the proxy server.
  • Added possibility to do not change code page used in web pages. It's useful for users of "modern" browsers (Mozilla, IE5.5+, etc) or who doesn't want to change code page of web content. This way of content processing is now default.
  • Fixed display of error pages and password-protected content (HTTP authentification). Now the WebOne will not show internal error pages on 3XX, 4XX and 5XX errors, a full server's reply will be returned. Internal error pages are used only on "Server not found", "Connection timeout" and similar errors (when there was no reply from server at all).
  • The configuration file can be selected on startup time. Start "webone.exe myconfig.txt" to use configuration from myconfig.txt. Old argument parsing (port selection) is not changed, it's still possible to use webone.conf file and different port: "webone.exe 8080".
Get it at https://github.com/atauenis/webone/tree/master/EXE .
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby keenmaster486 » 2019-6-05 @ 22:26

Well, this is neat!

I'm running it on a Windows 7 VM right now, and it seems to be working okay. It doesn't seem to be doing any modifications to the actual HTML, though, to make it more readable for old browsers - it just lets them load without HTTPS and fixes any character display issues by changing the code page.

Good work!
I flermmed the plootash just like you asked.

http://classictechnology.herokuapp.com
http://keenmaster486.github.io
IBM Thinkpad 600E, 560X, 365CD
User avatar
keenmaster486
Oldbie
 
Posts: 1719
Joined: 2016-2-16 @ 02:04
Location: Atroxus

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby keenmaster486 » 2019-6-05 @ 22:37

I can report that attempting to log in to VOGONS does not work on IE 5.5 with WebOne. It merely redirects back to the login page. If I try without the proxy, it works fine.
I flermmed the plootash just like you asked.

http://classictechnology.herokuapp.com
http://keenmaster486.github.io
IBM Thinkpad 600E, 560X, 365CD
User avatar
keenmaster486
Oldbie
 
Posts: 1719
Joined: 2016-2-16 @ 02:04
Location: Atroxus

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby JonathonWyble » 2019-6-05 @ 22:46

Lucky for me, I don't use older web browsers all the time, but sometimes I do once in a while, so I don't always have to worry about my browsing interface being outdated :-P Other than that, nice project there.
JonathonWyble
Member
 
Posts: 150
Joined: 2019-1-13 @ 02:10
Location: Buffalo, New York

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-6-06 @ 08:39

keenmaster486 wrote:I can report that attempting to log in to VOGONS does not work on IE 5.5 with WebOne. It merely redirects back to the login page. If I try without the proxy, it works fine.

I have checked, and confirm that the bug exists. Try to log in at www.vogons.org domain until next version. It works in IE5.5/WinME for mine.

keenmaster486 wrote:It doesn't seem to be doing any modifications to the actual HTML, though, to make it more readable for old browsers - it just lets them load without HTTPS and fixes any character display issues by changing the code page.

It also can redirect on JavaScript framework loadings to correct it for your browser version. So on DHTML pages should work some scripting (folding menus and similar).
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-6-10 @ 20:57

Version 0.6.1 is ready.
  • Fixed log in to VOGONS.
  • Added possibility for change URLs from "http://abc.de" to "http://www.abc.de" via config file (for fix the bug above).
  • OPTION requests are no longer ignored.
  • Because WebOne is HTTP 1.0 proxy, a "Connection: close" header has been added to prevent some errors in modern browsers. Also "Via" header is now added to responses, for better compatibility with W3C recommendations.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-7-08 @ 20:39

Version 0.7.0 is ready.
  • Fixed cookie lost on some 302 redirects (especially on phpBB 3.2 forums where logins was broken). It's now possible to log on to secure phpBB 3.2 forums from old browsers.
  • Add support for all HTTP methods. Probably WebDAV clients should work too, but I haven't tested fully.
  • Fixed "guru meditation" on Date HTTP header (in WebDAV).
  • Added pretty error message on FTP requests (when browser thinks that the proxy is CERN-compatible, but it's really not at this time).

Get it at https://github.com/atauenis/webone/tree/master/EXE .

If you have any troubles regarding blank pages, "302 Moved" and similar, add the problematic domain to the ForceHttps section of webone.conf. Or use version 0.6.1 which have old redirection algorithm but cannot correctly display pages on servers with cookies on redirections.

If pages looks dirty or incomplete (without styles and images) and there are many "Empty request.[302]" errors in the log, enlarge SlowClientHack option in config file until the problem solves (except that the proxy will work slowly).

Currently I'm trying to fix these bugs.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-7-09 @ 19:07

Version 0.7.1 has been released
  • Fixed 302 errors on slow PCs. Old SlowClientHack option in webone.conf file is replaced with ClientTimeout so the proxy is now working faster and more stable.
  • Because some sites are confusing some browsers on http-to-https redirections (i.e. Flickr and Opera 12) when new redirection algorythm is used, a new section has been added to webone.conf. Domains where redirections causes problems with WebOne 0.7 can be added to the UseOldRedirect section of configuration file and WebOne 0.7.1+ will hide that redirections like version 0.6.x and earlier do where that sites worked good. Also it can help with opening StackOverflow in Netscape 3.
  • All HSTS headers are now putting to trash, so semi-modern browsers (like Opera 12) will not add sites to their HSTS lists and ignore the proxy.
  • Fixed crash on WebDAV traffic when non-English letters are used in file names. They are blacklisted by Microsoft.
  • Added read-only support for WebDAV. At least, Yandex.Disk is working with Windows 2000 SP4 + IE 5.01 WebFolders. All files can be downloaded, even with non-English file names. File upload, move and delete are still non stable.
Initially these changes was planned for 0.8, but I'm decided that other changes for 0.8 will take large amount of time and already completed fixes are too important to wait.

It's available at http://github.com/atauenis/webone/tree/master/EXE

P.S. This post is written in Microsoft Internet Explorer 1.5 on Windows NT 3.51. It probably never was possible to open Vogons (due to lack of Host header). But now it is looks to MSIE as a HTTP 1.0 server from 90s. Yeah, there are no scripts, png images, but basic things are working correctly.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby t9999clint » 2019-7-16 @ 04:42

This project is amazing. Thanks for your work on it.
One quick feature request though...
I haven't looked at this too deeply so maybe it already does it, but I have an idea for another feature.
Would it be possible to have your proxy automatically recompress and replace all pictures above a specified filesize to a smaller, lower quality format?
I've seen this as a feature for other proxies (like opera mobile) and figured it'd be a useful speedup trick for low ram systems.
I think my dialup ISP (Telus) had this feature back in the day.

Another neat feature would be adblocking via easylist rulesheets, but I'm guessing that would be too complicated to do and probably not worth it anyways.
User avatar
t9999clint
Member
 
Posts: 152
Joined: 2014-10-07 @ 14:08
Location: Edmonton, Canada

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-7-17 @ 11:33

I'm planning to add converting of PNG/WEBP images to GIF. Probably, JPG recompressing also may be added. But it is some difficult to implement, and probably will be added non soon.

But even now anyone who want this can make a web-based image converter (i.e. on PHP+ImageMagick) and add it to webone.conf like this:
Code: Select all
[FixableURL:\.webp$]
Redirect=http://example.com/convertimage.php?url=%URL%

[FixableURL:\.jpg$]
Redirect=http://example.com/compress.php?url=%URL%&rate=50

:)

Ad blocking is also possible via FixableURL sections:
Code: Select all
[FixableURL:adwords]
Redirect=about:blank

But a some blacklist files based on ABP rules I can add in future versions. Most of ads are javascript based and simply doesn't appear on old browsers and don't slow them. So full compatibility with ABP lists is not need.

P.S. Sorry for my bad English, if it's looking ugly.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby weldum » 2019-7-27 @ 02:49

I'm trying it with my emac g4 using Firefox 3 because currently it loads everything wrong, but it doesn't work, webone says:

www.google.com.ar:443 try to connect[405]
wrong method.

that but with any web page, is there something bad?
pd I'm using the default configuration
Ohh, the humanity :depressed:
386SX 25-C3 800-P3 900-Atom 1.6-C-D 2.13-P4 2.26-P4HT 3.0-P-DC 1.6-AFX 2.6-FX 3.3
User avatar
weldum
Member
 
Posts: 366
Joined: 2016-2-16 @ 07:25
Location: Mendoza-Arg

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-8-05 @ 17:55

Weldum, can you give full log from the console window? If there are no other redirections in it (302 replies, or "carousel" messages), probably you are trying to open sites with https prefix. Note that all "HTTPS Everywhere"-like addons must be disabled (or haven't been installed at all). HSTS is not included in Firefox 3.x, so it can'be reason of this problem.

It this doesn't solve the problem, try to use WebOne 0.6.1. Please tell me, are the bug is still present or not.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-8-07 @ 11:04

Version 0.8.0 is ready.
  • New redirection algorithm is now used. So it should solve most problems with 302s and blank pages that many can see in 0.7.x and 0.6.x versions.
    Old (v0.6.1) redirection algorithm is still available for sites listed in InternalRedirectOn section of webone.conf. But probably it shouldn't be used.
  • Implemented internal HSTS-like list for domains that are don't want to open via HTTP. It speeds up opening of most of modern sites and solves some problems.
  • Fixed blank pages that was seen in 0.7.x.
  • Maked a new workaround for "The proxy does not know the CONNECT method" message. In few cases Browser can redirect to a normal version of the page. This is caused by inability to receive HTTPS requests by the proxy. And if the browser made such request, WebOne now replies with JavaScript redirection to a HTTP version. But it's still unhelpful if the browser have HSTS or something.
  • Added possibility to open archived copies of dead sites and pages. If SearchInArchive option is set, on 404 errors and on URLs with non-resolvable servers WebOne will try to get a copy from Web.Archive.Org.
  • In default webone.conf there are added redirections to Web Archive for some popular dead hosting providers that aren't returning 404 or ServerNotFound errors. So content from them is now available again.
  • Because old browsers cannot display correctly Web Archive error pages, the proxy server can return simplified pages. This can be enabled or disabled via ShortenArchiveErrors option.

It's available at http://github.com/atauenis/webone/tree/master/EXE
Full overview and help is available in Wiki.

---

weldum wrote:I'm trying it with my emac g4 using Firefox 3 because currently it loads everything wrong, but it doesn't work, webone says:

http://www.google.com.ar:443 try to connect[405]
wrong method.

that but with any web page, is there something bad?
pd I'm using the default configuration

Probably this may be caused by invalid configuration of Firefox. When correct settings are set (shown on the picture below) WebOne log almost should not have any "wrong method" entries and all should work.
Image

Edit: replaced the screenshot with English version of Firefox.
Last edited by ATauenis on 2019-8-08 @ 20:44, edited 1 time in total.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby weldum » 2019-8-07 @ 13:14

great, I'm gonna try it later because that problem happened in safari 2 and in opera for mac
npw I've installed an older version of mac os so I should test it.
worth noting that, in a completely different machine, in the same "session" of webone, everything worked fine, that machine had windows 98se with Firefox 2.0.20.0
Ohh, the humanity :depressed:
386SX 25-C3 800-P3 900-Atom 1.6-C-D 2.13-P4 2.26-P4HT 3.0-P-DC 1.6-AFX 2.6-FX 3.3
User avatar
weldum
Member
 
Posts: 366
Joined: 2016-2-16 @ 07:25
Location: Mendoza-Arg

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby DosFreak » 2019-8-07 @ 13:34

Was this ever posted at MSFN? Should be able to get alot of testers there.
User avatar
DosFreak
l33t++
 
Posts: 10272
Joined: 2002-6-30 @ 16:35
Location: Your Head

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby ATauenis » 2019-8-13 @ 17:34

I will start a topic on MSFN after adding possibility to make IE4's Active Channels working again. MSFN is forum about Windows stuff, AFAIR. So I'm need to make some minor patches in WebOne to make it useful for re-enabling Win9x built-in internet stuff.
2×Soviet ZX-Speccy, 1×MacIIsi, 1×086, 1×286, 2×386DX, 1×386SX, 2×486, 1×P54C, 7×P55C, 6×Slot1, 4×S370, 1×SlotA, 2×S462, ∞×Modern.
User avatar
ATauenis
Newbie
 
Posts: 93
Joined: 2018-5-22 @ 13:06
Location: Moscow, Russia

Re: WebOne - proxy for old browsers to make them Web 2.0-capable

Postby JonathonWyble » 2019-8-13 @ 23:41

ATauenis wrote:I'm planning to add converting of PNG/WEBP images to GIF. Probably, JPG recompressing also may be added. But it is some difficult to implement, and probably will be added non soon.

But even now anyone who want this can make a web-based image converter (i.e. on PHP+ImageMagick) and add it to webone.conf like this:
Code: Select all
[FixableURL:\.webp$]
Redirect=http://example.com/convertimage.php?url=%URL%

[FixableURL:\.jpg$]
Redirect=http://example.com/compress.php?url=%URL%&rate=50

:)

That's cool, but would image converting destroy the relationship your project has with acting as a proxy? Just asking. Well, I guess it does seem like a good idea to add miscellaneous stuff into a project made for a certain task :happy:
JonathonWyble
Member
 
Posts: 150
Joined: 2019-1-13 @ 02:10
Location: Buffalo, New York

Next

Return to Release Announcements

Who is online

Users browsing this forum: No registered users and 1 guest