Update 2009-10-04 Added a title to the post; oops!
The following nginx configuration hasn't been tested in a production environment yet, and isn't tuned beyond the defaults that ship with Ubuntu Karmic, but it works on my laptop in a virtual image for both regular HTTP and SSL requests - so what could possibly go wrong?
Steps to get this working on Ubuntu Karmic, assuming that nginx and Apache are running on the same server:
- Install nginx: sudo aptitude install nginx
- Copy the configuration file, changing "192.168.69.107" to match your server's IP address or host name, into a file called /etc/nginx/sites-available/evergreen and create a symbolic link to the file at /etc/nginx/sites-enabled/evergreen
- Modify /etc/apache2/ports.conf to change port 80 to 9080 and port 443 to 9443.
- Modify /etc/apache2/eg_vhost.conf to change the "Listen 443" directive to "Listen 9443"
- Restart nginx and Apache to put the new configuration in place
As I said, there's probably plenty of room for improvement; I have only a few hours of experimentation with nginx under my belt at this point. But assuming no showstoppers turn up after further testing, I would expect to see this going into production in Conifer sooner rather than later, and potentially becoming a standard part of any production Evergreen system.