Blue Ribbon Campaign for Free Speech Web Tools

Miscellaneous tools to create and manage Web sites

Home > Web Tools


I've written these tools while working on various Web projects. They may be useful to others too, so here they are. All are written in Perl 5.


July 16, 2017-- released CGIProxy 2.2.2, with a much-improved installation wizard for all platforms, optimized viewing on mobile devices, and many fixes.

Trying to browse to a server that's inaccessible to you? This CGI script may be what you need. It acts as an HTTP or FTP proxy, and can be a bridge between a browser and an otherwise inaccessible server. The user is kept as anonymous as possible from any servers. Common uses include: anonymous proxies, personal proxies, VPN-like uses, and others. It's very simple to install, and very configurable; some of the more than 70 config options include: selective cookie and script removal, text-only support (to save bandwidth), simple ad filtering, access restriction by server, custom encoding of target URLs and cookies, and more. There's an online demo.


If you write CGI scripts and you ever present forms to the user with one or more values already filled in, this Perl 5 module can make your life easier. Call the main function defaultify() with any HTML page and a hash of fields and values to be set, and it returns the same HTML with all those form fields filled in. This approach is more versatile and easier to manage than other tools that require the HTML to be tightly interspersed with the program code. Supports a variety of input formats for compatibility with other tools. The module also provides functions to parse HTML tags and to augment the use of defaultify().


A Web-based DBM database editor. If you use DBM files and don't have a simple way to edit them, you'll want this. It treats each stored value as several fields joined by a delimiter, in effect supporting multiple fields in each record (I use this construct all the time). This script displays such a DBM database as a table, and lets you edit records in auto-sized forms, very simple to use. There's an online demo.


A link-checker, with features I couldn't find anywhere else (otherwise, I would have used one of the many existing ones). Special features include SSI support, direct file reads where possible (huge speed increase), the latest Web standards, and support for various server options. It could easily be extended, or features from it could be added to other link-checkers. It was written with Apache in mind.

© 1998-2017 James Marshall (comments encouraged)

Last (Significantly) Modified: July 16, 2017