On Mon, Oct 10, 2011 at 13:50, Darryl Lewis <darryl.le...@unsw.edu.au> wrote: > Something I've always wondered about, but never figured out, is how does > apache run as 'apache user' or 'nobody' and work on a port below 1024, but > Tomcat can't? > Anyone got a simple explanation? >
C (and C++ and many others) has seteuid() and fork(), Java doesn't. Apache starts as root, binds to port 80 (therefore opens an fd on it), then forks. The fd is inherited by the child, which calls seteuid(). Then the parent exits. Done. -- Francis Galiegue ONE2TEAM Ingénieur système Mob : +33 (0) 683 877 875 Tel : +33 (0) 178 945 552 f...@one2team.com 40 avenue Raymond Poincaré 75116 Paris --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org