tinyproxy - Man Page
A light-weight HTTP proxy daemon
Synopsis
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.
- -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. (Daemon mode only)
- SIGUSR1
Force reload of config file and filter list. This is handy to update the configuration if Tinyproxy is running in foreground without dropping active connections.
Template Files
There are two occasions when Tinyproxy delivers HTML pages to the client on it's own right:
- When an error occurred, a corresponding error page is returned.
- 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://tinyproxy.github.io/>.
See Also
Author
This manpage was written by the Tinyproxy project team.
Copyright
Copyright (c) 1998-2020 the Tinyproxy authors.
This program is distributed under the terms of the GNU General Public License version 2 or above. See the COPYING file for additional information.