tinyproxy(8) A light-weight HTTP proxy daemon

SYNOPSIS

tinyproxy [-vldch]

DESCRIPTION

tinyproxy is a light-weight HTTP proxy daemon designed to consume a minimum amount of system resources. It listens on a given TCP port and handles HTTP proxy requests. Designed from the ground up to be fast and yet small, it is an ideal solution for use cases such as embedded deployments where a full featured HTTP proxy is required, but the system resources for a larger proxy are unavailable.

OPTIONS

tinyproxy accepts the following options:

-c <config-file>

Use an alternate configuration file.

-d

Don't daemonize and stay in the foreground. Useful for debugging purposes.

-h

Display a short help screen of command line arguments and exit.

-l

Display the licensing agreement.

-v

Display version information and exit.

SIGNALS

In addition to command-line options, there are also several signals that can be sent to tinyproxy while it is running to generate debugging information and to force certain events.

SIGHUP

Force Tinyproxy to do a garbage collection on the current connections linked list. This is usually done automatically after a certain number of connections have been handled.

TEMPLATE FILES

There are two occasions when Tinyproxy delivers HTML pages to the client on it's own right:

1. When an error occurred, a corresponding error page is returned.

2. When a request for the stathost is made, a page summarizing the connection statistics is returned. (See STATHOST below.)

The layout of both error pages and the statistics page can be controlled via configurable HTML template files that are plain HTML files that additionally understand a few template variables.

TEMPLATE VARIABLES

There are several standard HTML variables that are available in every template file:

request

The full HTTP request line.

cause

The abbreviated cause of the error condition.

clientip

The IP address of the client making the request.

clienthost

The hostname of the client making the request.

version

The version of Tinyproxy.

package

The package name. Presently, resolves to tinyproxy.

date

The current date/time in HTTP format.

In addition, almost all templates support:

detail

A detailed, plain English explanation of the error and possible causes.

When Tinyproxy finds a variable name enclosed in braces, e.g. "{request}", then this is replaced by the value of the corresponding variable before delivery of the page.

STATHOST

Tinyproxy returns a HTML page with connection statistics when it receives a HTTP request for a certain host --- the stathost. The stathost name defaults to tinyproxy.stats and can be changed at runtime to any name or IP address with the configuration variable StatHost.

The stat file template can be changed at runtime through the configuration variable StatFile.

FILES

/etc/tinyproxy/tinyproxy.conf, /var/run/tinyproxy/tinyproxy.pid, /var/log/tinyproxy/tinyproxy.log

BUGS

To report bugs in Tinyproxy, please visit <https://www.banu.com/tinyproxy/>.

AUTHOR

Written by the Tinyproxy project team.

COPYRIGHT

Copyright (c) 1998-2000 Steven Young; Copyright (c) 2000-2001 Robert James Kaes; Copyright (c) 2009-2010 Mukund Sivaraman; Copyright (c) 2009-2010 Michael Adam.

This program is distributed under the terms of the GNU General Public License version 2 or above. See the COPYING file for additional information.