Projects / MiddleMan


Middleman is a robust proxy server with many features designed to remove unwanted content, increase privacy, and to simply make surfing the Web a more pleasant experience. Some of the highlights include banner and popup blocking, HTTP and FTP content caching, NTLM and Basic authentication when forwarding through another proxy server, regular expression substitution in downloaded files and HTTP headers, regular expression substitution on requested URLs, many URL commands to temporarily change the proxy settings or to view information about a requested file, complete support for HTTP/1.1 including persistent connections and gzip encoding, and an intutive Web interface for configuring the proxy.

Operating Systems

Recent releases

  •  12 Mar 2004 01:33

    Release Notes: This release fixes an occasional crash inside the prefetch thread, fixes a bug in transparent proxying, corrects the way the proxy daemonizes itself, corrects file permissions, and adds a new IP address filtering feature.

    •  19 Feb 2004 12:46

      Release Notes: This version includes a major design overhaul, which moves most of the code into C++ classes. It also adds many features, bugfixes, and miscellaneous enhancements.

      •  11 Nov 2003 07:47

        Release Notes: A bug that prevented headers sent by the server (such as Set-Cookie) that aren't handled internally by the proxy from being passed onto the client was fixed. A memory corruption bug due to the wrong amount of memory being allocated for mime filtering entries was fixed. A bug that prevented the proxy from using a forwarding proxy with no ICP type was fixed. A port range option was added to profile entries. Detection of content encoding was fixed to handle servers that return multiple types.

        •  11 Sep 2003 10:25

          Release Notes: Support for ICP (Internet cache protocol) was added, making it possible to arrange several proxies in a hierarchy and share cached objects. It is now possible to specify multiple directories for cached objects to be stored. The 'Host' and 'File' options in most configuration sections were removed in favor of enabling/ disable profiles based on the URL requested. A workaround was added for a bug triggered by improper headers sent by Apache 1.3 when a tar.gz file was requested by a client that doesn't support gzip compression.

          •  20 Aug 2003 17:43

            Release Notes: A new feature was added that allows profiles to be added or removed from the current request based on the URL. This makes it much easier to enable or disable groups of entries in other sections together for certain sites.

            Recent comments

            02 Mar 2004 19:43 mcjason

            Re: section file option missing when starting up

            > I am a little lost, the section.xml path
            > is correct, I checked out all of the
            > paths, is there something else that
            > message means?

            My apologies.. I forgot to add the -s option to the
            executable in mman.init for 2.0, replace the
            ${PROGRAM}... line with:

            ${PROGRAM} -c ${CONFIG} -s ${SECTION} -l
            ${LOGFILE} -d ${LOGLEVEL} -p ${PIDFILE};;

            02 Mar 2004 19:21 rikt

            section file option missing when starting up
            I am a little lost, the section.xml path is correct, I checked out all of the paths, is there something else that message means?

            10 Nov 2003 06:11 martianalien

            Mysterious loss of cookies
            On a small number of web-sites, including for example freshmeat, middleman 1.9 is breaking cookies. I turned debugging up to the maximum but have been unable to see anything relevant in the logs. Do you have any suggestions.

            25 Sep 2003 22:38 mcjason

            Re: Sample config
            Thanks for pointing that out... I forgot to copy the updated
            configuration over when preparing the release.

            It can be fixed from the web interface, however, if you fill
            in all the values yourself and then save the settings.

            25 Sep 2003 13:25 kpiche

            Sample config
            Good piece of software - been using it since 1.5.*

            If you build your config.xml from the config.xml.sample file from 1.9, move the <cache></cache> section from the <global> section to its own section (I put mine after <access> and before <header>) otherwise the caching feature won't work and it can't be fixed throught the web interface.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.