Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Do you know a WebProxy, that can do this?
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Do you know a WebProxy, that can do this?

Hi folks,

First of all this is about Proxys like Squid or Ziproxy or RabbIT I use Ziproxy when I'm on a slow link right now, but I would really love to have something more scaleable, more customizable. There are some features I would really like to use in a proxy.

  • Choseable compression type (lzma or bzip instead of gzip)
  • just remove exif data from images, but not compress them (like execute exiftool -all= image.jpg on every image)
  • be able to define a url blocklist (Ziproxy has that already)
  • Define a custom JavaScript compressor
  • use JPEG2000 or WebP for image compression

The problem I think would be the browser on the client side, that couldn't handle some of the data the proxy would prepare like lzma or JPEG2000 (it's dead, i know). So I really don't expect to find a proxy, that can handle all of this. Do you know any Proxy, that is very very customizable and maybe also has a client-server approach. I mean for example set lzma -7 on the server and then have a client running, that unpacks the content and serves it to a local browser. Any suggestions are welcomed.

Comments

  • netomxnetomx Moderator, Veteran

    As a question: why do you need to remove exif data?

  • chrispchrisp Member
    edited January 2014

    @netomx said:
    As a question: why do you need to remove exif data?

    Because I can't see exif data when browsing, so what should I load it for? This is about performance on a slow connection, where a powerful vps on a fast link could prepare a website to be smaller in general.

    There are examples for high amounts of exif information when websites use stock graphics, that contain copyright information and such.

  • netomxnetomx Moderator, Veteran

    @chrisp said:
    There are examples for high amounts of exif information when websites use stock graphics, that contain copyright information and such.

    I don't really know how many data exif may be, but I think that not even 1K of data may be on EXIF... or am I wrong?

  • xyzxyz Member

    I've actually wondered about this myself to some extent.

    For general web browsing, I don't think you'll be able to save that much bandwidth by going LZMA over deflate. LZMA can win by a fair margin for larger data sets, but for a few KB of data (typical size of many scripts/pages), the gains are somewhat limited (then again, web devs seem to care less about the size of their scripts these days, so maybe there's more point in this...). Perhaps a smart proxy system could transfer multiple assets in one compressed stream, but that starts getting a little complicated.
    Nevertheless, Mozilla does have an experimental patch for Firefox to support xz comrpession which could solve the client side issue at least.

    For images though, only Chrome/Opera have support for WebP and I don't know what support JP2k, so you can't have xz and WebP in the same browser. To force support, you may be able to inject something like this or this though I don't know what sort of compatibility issues you may have.
    Again somewhat questionable improvement over JPEG from what I've read - you might be able to get close by just sticking with a re-encoded JPEG (using an efficient JPEG encoder). GIF/PNG may be a bit different I suppose.

    For the server, expect to put in more effort/work. You could modify an existing open source proxy to send xz or compress images differently, or you could write a script yourself specifically for it. I haven't heard of anything that already exists which does this unfortunately.
    I'm not sure about your mention of "more scaleable" as higher compression will be more resource taxing on the server (and client too).

    Using a two proxies instead (ie client-server), you could abuse things a little more, eg compressing HTTP headers, PPMd compression instead of LZMA or compressing images to H.264/265 intra frames to yield smaller sizes but I personally don't think it's worth the effort for the this level of size reduction. Nonetheless, if it interests you, there's some ideas...

    Personally I just disable images on a bandwidth constrained connection (either due to speed or download quotas) and use the Firefox extension, ImgLikeOpera. I find that this, by itself, can make pages load a lot faster (and browsers use less RAM) and many pages are actually quite usable without images. This, of course, along with the other stuff (blocking ads, trackers, Flash/Java and scripts with NoScript) as well as obviously disabling browser features which make external calls (eg auto-updates and phishing filters).

  • Awmusic12635Awmusic12635 Member, Host Rep

    Could probably build some private cloudflare clone, since the basic functions you want they seem to do. Nginx reverse proxy setup.

Sign In or Register to comment.