p0rn-proxy - Man Page

HTTP proxy for comfortably browsing p0rn



--addr addr ] [ --configfile configfile ] [ --help ] [ --port port ] [ --proxy proxy ] [ --version ]

p0rn-proxy-a addr ] [ -c configfile ] [ -h ] [ -p port ] [ -P proxy ] [ -V ]


p0rn-proxy is a small and simple proxy written in Perl.  It adds some links to the top of each HTML page that allow you to mark a page as thumbnail site in order to blacklist it, as a site containing pictures or as a picture site worth downloading.  It also allows you to access and administrate the proxy link database.


Just start p0rn-proxy.  This will by default create a proxy running on http://localhost:8080 (it will fail if something else is already running on this port).  Then point your browser to the proxy.  Browse some website and see all those extra links at the top of each page. Now browse some p0rn and start blacklisting those annoying thumbnail sites without real content.  After marking pages for download, run p0rn-download(1) to actually get them.


--addr addr-a addr

This is the IP address that p0rn-proxy will bind to.  This address (together with the correct port) must be configured in your browser to make use of the proxy.

Be careful: Everybody who can reach the port on this address can use your proxy.  You should bind to an address only reachable from your local net or use a packet filter to 'guard' p0rn-proxy from the outside.

The address '' will bind p0rn-proxy to all of your network devices.

Default is to bind to address '' as this address can only be accessed from your local computer and is not accessible from the network.  Please take care when binding to another address.

--configfile configfile-c configfile

The options from the given configuration file will be read.  These options can be overridden by other command line arguments.

Default is not to read a configuration file.


This prints a short help text and exits.

--port port-p port

This is the port on which the proxy listens to your incoming requests. This port (together with the correct address) must be configured in your browser to make use of the proxy.

Default setting is port 8080.

--proxy proxy-P proxy

If this variable contains a value, the given proxy is used by p0rn-proxy.  This allows you to chain multiple proxies together.

Example: If you need a proxy to access the Internet then point your browser to the p0rn-proxy and in turn point p0rn-proxy to your original proxy.

Set this to 'none' to use no proxy at all.

Default is to use the environment variable ${http_proxy}.


This prints the current version of p0rn-proxy and exits.

Configuration file format

Configuration is also possible via configuration files.  Every command line switch is possible in a configuration file.  Empty lines and lines starting with # are ignored.

Instead of --port 3128 you would put this line in the configuration file

 port = 3128

and so on and so forth.


All data is stored in a database.  By default, it is located in ./p0rn.db (yes, that's the directory from which you're starting p0rn-proxy).  Is you want to change this, set the environment variable P0RNDBLOCATION (the second letter is a zero) to another path and filename.

See Also

p0rn-download(1), p0rn-dbdump(1), p0rn-dbrestore(1)

Modules Needed

 use AppConfig;
 use DBM:Deep;
 use HTTP::Daemon;
 use LWP::UserAgent;

These modules can be obtained from <http://www.cpan.org>.


In the default configuration, p0rn-proxy supports NO ACCESS CONTROL! Everyone with access to the proxy port on your system will be able to use the proxy.  Please bind p0rn-proxy to a port that is either only available from your local network or protected by a packet filter.

Please report bugs by mail to <p0rn-bugs@cgarbs.de>.


p0rn-proxy was written by Christian Garbs <mitch@cgarbs.de>.


Look for updates at <http://www.cgarbs.de/p0rn-comfort.en.html>.

Referenced By

p0rn-bot(1), p0rn-dbadd(1), p0rn-dbdel(1), p0rn-dbdump(1), p0rn-dblist(1), p0rn-download(1), p0rn-grab(1).

2004-11-20 0.0.4 p0rn-comfort