Man-in-the-middle proxy for HTTPS with SSL verification and connection pooling/keep-alive.
$ npm -g install mallorca
$ mallorca \ --cert /etc/ssl/certs/your-mallorca-proxy.crt \ --key /etc/ssl/certs/your-mallorca-proxy.key \ --port 5000 \ --maxsockets 20 \ --keepalive-socket-count 10 \ --pidfile /var/run/mallorca.pid \ --cacert /etc/ssl/certs/ca-root-for-externalsite.pem \ www.someexternalsite.com
Ensure you have the following dependencies installed and in your PATH:
Then, you should be able to run the tests:
$ npm test
Finally, to launch Mallorca:
$ ./bin/mallorca YOUR OPTIONS HERE...
The following routes are reserved for the operation of the Mallorca proxy, and are not proxied to the upstream web server.
Indicates whether Mallorca can consistently maintain its connection to the upstream server. A response code of 200 indicates a healthy connection, 503 indicates connection problems.
Enables changing connection pool settings without having to restart Mallorca. Accepts a payload of either a JSON object or form encoded key-values:
max - Maximum number of connections to the upstream server
keepalive - Number of connections to keep open when no more requests are queued
Simulates an internal error within the Mallorca proxy, does not respond. You must have set the allow-error-routes command line switch to use this route.
Provides statistics for the connection pool and latencies of recent requests to the upstream server.
git checkout -b my-new-feature)
git commit -am 'Added some feature')
git push origin my-new-feature)