Git Product home page Git Product logo

reverse-proxy-for-free-basics-docker's Introduction

Reverse Proxy for Free Basics: automated hotfixes to improve data efficiency and comply with technical guidelines

Work in Progress This tool try it's best to make proxied site content as much data efficient as possible. The main objective is make easier for volunteers set up own proxies and help websites that do social good (but lack of developers to adapt their website) to be more easy to be accepted as free access. This workflow can work based on the following logic: sites that require very low amount data transfer to be fully operational can be so cheap that mobile operators can simple not care about ask money from end users.

For now this project is being tested on the https://inclusao.etica.ai/ (original, generic GitHub Pages template) and http://0.inclusao.etica.ai (hotfixed by this proxy). See issue#1 for more details.

Proxy Deployment Methods

TL;DR: We're document here the "YOUR PROXY" in the data flow

The Sites -> YOUR PROXY -> Mobile Operator -> End User (free access)

or (easier strategy at the moment if you are not big enough to convince Mobile Operators)

The Sites -> YOUR PROXY -> Free Basics by Internet.org (HTTPS) -> Mobile Operator -> (HTTPS) End User (free access)

Docker

TODO: add a very friendly comentation soon here about Deployment Methods/Docker (2019-06-08 02:32 BRT)

Tsuro

TODO: add a very friendly comentation here about Deployment Methods/Tsuro (2019-06-08 02:32 BRT)

Acknowledgments

Special thanks should be given to all those involved in the development of Docker release of the Automatic PageSpeed optimization module for Nginx.

License

For see copyrights holders and licenses of the base Docker image, start by looking at apache/incubator-pagespeed-ngx.

License of Reverse Proxy for Free Basics

Public Domain

To the extent possible under law, Emerson Rocha has waived all copyright and related or neighboring rights to this work to Public Domain.

reverse-proxy-for-free-basics-docker's People

Contributors

fititnt avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

reverse-proxy-for-free-basics-docker's Issues

Reverse Proxy for Free Basics MVP for content of inclusao.etica.ai at 0.inclusao.etica.ai

Quick links:


This repository started at fititnt/cplp-aiops#62, and the main discussion/documentation about the inclusion about submittion on the https://inclusao.etica.ai as part of the Free Basics / Internet.org is here EticaAI/inclusao-digital#1 (early access, ask via email rocha(at)ieee.org)

The template used on inclusao.etica.ai is the GitHub default. But even if we care about do not use big images or download, the default uses JavaScript for create anchors (https://github.com/bryanbraun/anchorjs).

So, this issue is not just about make this reverse proxy work, but also about at least one project be accepted. And this can take some time.

We doing this (creating a reverse proxy in Docker) hoping that it could be reused in future for other projects, and make easier to force adaptation to the Free Basics Technical guidelines, that, in short, require absence of:

  • JavaScript
  • iframes
  • Video and large images
  • Flash and Java applets

Target Domain as enviroment variable

Tsuru best practices would recommend follow The twelve-factor app is a methodology, see https://12factor.net/. In this case ideally we should have one option to set the target domain only with environment variables and try to minimize need to the final user to change it's contents.

For now, since I'm configuring the https://www.etica.dev and not using CloudFlare free HTTPS, we have this issue compared with the https://aguia-pescadora.etica.ai:

Image shows a https error and deny user to access www.etica.dev, but aguia-pescadora.etica.ai is ok.

So, let's do this.

Documentation on how to deploy Reverse Proxy for Free Basics on Tsuro open source PaaS using Docker

Quick links:


This issue is about the documentation on how to deploy Reverse Proxy for Free Basics on Tsuro open source PaaS using Docker.

It does not depend on #1 (that one requires wait for the full process).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.