muxmpm/metuxmpm for apache 2.0.48

This is not an offical site for metuxmpm. Until very recently there was none, now that there is, I guess you can just head over to http://www.metux.de/mpm/. There exists a mailing list, you join it by sending a mail to majordomo@metux.de with "subscribe muxmpm" in the body of the message. If you are unfamiliar with majordomo I recommend you to send a "help" in the body to get to know some of the features available to you. All files are available on the mailing list through majordomo!

This page is just a little effort by me (Asbjørn Sannes) to get all relevant patches together into an easily applied patch to the newest version of Apache (until it is included mainstream).

Releases (there isn't really a versioning system for metuxmpm)

httpd-2.0.48-metuxmpm-r8.patch gz

Adds optional chroot support
Changes MaxThreadsmetuxmpm directive back to MaxThreadsPerChild (I'm guessing a find-and-replace was overly aggressive)
Fixes PID display in the server-status display
Lowers DEFAULT_SERVER_LIMIT from 20000 to 256

The last change is because if you have ExtendedStatus on, the server-status page becomes several megabytes in size and considerably less useful. If you need more than 256 servers you can change the #define. (It seems to me there should be a better way of handling this)

Release by Seán Gabriel, thank you!

httpd-2.0.47-metuxmpm-r7.diff gz

Dmitry Strygin fixes a memory leak.
Mini hack by me (Asbjorn Sannes) so that you can have more than 8 servers.

httpd-2.0.47-metuxmpm-r6.diff gz

Submitted by Dmitry Strygin. Fixes POST problems. See ML for a description of what he has been up to. ;)

httpd-2.0.47-metuxmpm-r5.diff

Really fixes debugging and compiler warnings by Radu Rendec.

httpd-2.0.47-metuxmpm-r4.diff

Reverted bodiless patch and added new BODY fixes by Hideki Noma.

httpd-2.0.47-metuxmpm-r3.diff

Added BODY/POST bodiless fix by Seán Gabriel.

httpd-2.0.47-metuxmpm-r2.diff

Added gabriel-post-and-header-patch.diff POST fixes by Seán Gabriel (it may not work with POSTs over 8 kbytes).
Added GCC 3.3 fixes by Peter Poeml.

httpd-2.0.47-metuxmpm.diff

A patch based upon Leen's (with everything that includes):
Turns off debugging (also from Leen):
Fixes host header bug.

How to apply it

To apply it, extract apache 2.0.47 (httpd-2.0.47.tar.gz) and enter the httpd-2.0.47 directory and run:
patch -p1 < httpd-2.0.47-metuxmpm-r4.diff
./buildconf
Some day, some day it will be included in the offical Apache release :)

How to compile it

Just like any other mpm, the name is "metuxmpm" (configure --with-mpm=metuxmpm). You should avoid doing ake distclean - this destroys some needed automake files.

Configuration Sample

Multiplexer apache apache
Processor ole apache
Processor dole apache
Processor doffen apache

NameVirtualHost *
KeepAlive Off

<VirtualHost *>
        AssignUserID ole apache
        ServerName ole.example.com
        ServerAlias www.ole.example.com
        DocumentRoot /www/ole.example.com
        ServerAdmin ole@example.com
</VirtualHost>

<VirtualHost *>
        AssignUserID dole apache
        ServerName www.dole.example.com
        DocumentRoot /home/dole/wwwdocs
        ServerAdmin dole@example.com
</VirtualHost>

<VirtualHost *>
        AssignUserID doffen apache
        ServerName doffen.example.com
        DocumentRoot /www/doffen.example.com
        ServerAdmin doffen@example.com
</VirtualHost>

<VirtualHost *>
        AssignUserID ole apache
        ServerName www.example.com
        DocumentRoot /www/www.example.com
        ServerAdmin webmaster@example.com
</VirtualHost>

Who made it?

To my knowledge it was Enrico Weigelt (== metux ITS (check out http://www.metux.de/ for more info)) who started it up after perchild.c stopped for several reasons. Other people have influenced it, but this is all in the archives of the muxmpm mailing list, available through majordomo.

This page is not an official page in any way. Go to http://www.metux.de/mpm/ !