Linux or OS X Server?
For a web site I would say save your money and use Linux or another free (as in beer) Unix like operating system. If you really want the BSD networking stack use one of the *BSD derivatives such as FreeBSD or OpenBSD. OpenSolaris is another alternative.
Don't get my wrong, I love Snow Leopard but I just don't see the point for a web server.
I would go for Linux. Reasons being:
- Lot cheaper on hardware side, and potentially you'll get better CPU/RAM/HDD for the money
- No fee for OS
- You still want to use OpenSource applications (php, django, python, etc, etc), and although SnowLeopard is pretty good at supporting those, you still get faster turn around with patches etc on Linux
- No fee for OS
- Lot better documentation and support from community
- If things go really bad (or good) and you need professional support, Linux admins are a lots cheaper and easier to find
- Linux is used in lot of large enterprise environments, not without a good reason
My personal advise - stick to enterprise grade linux - CentOS. A lot will argue that BSD nix clones or other linuxes like Ubuntu might be better. Trust me, they ARE better, but not on a system that makes you money.
That's my 2p.
The main thing you're going to get from Apple is integrated hardware/software support. You might get something similar if you buy a Linux server from a vendor that supports Linux. I've not used an Apple server in well over a decade, so my assumption about their support might be off base.
The main things you're going to get from Linux are compatibility (most open-source applications are geared towards Linux, and any problems you run into will likely be compounded by running a different OS — and, yes, this is a gross generalization), and lower cost.
I think the biggest factor would be what his current shared server is running. If he replaces it with the same OS, he's likely to have fewer migration headaches.
Remember that OS X server can only be run on Apple hardware (most commonly the Apple Xserve). You get quite the more bang for your buck if you custom build or buy a entry-level server from HP or Dell and run Linux on it.
It all comes down to your needs. You don't mention how much traffic the site gets, nor how much storage you need. Perhaps VPS is an alternative?