All of the above are open source software. Apache, mysql and php are available for MS Windows as well as for Linux and Unixen.
This document provides a cookbook for installation and configuration of RedHat Linux 9 with Apache httpd web server, mySQL relational database, php scripting language, and samba PC file service. This combination is the most popular server on the Internet. For WHYTO see: LAMPS servers WHYTO.
Note: Apache httpd, mysql, and php can all be installed on your (legacy :-) Microsoft servers, as well as a wide variety of *nix (Unix and Linux varieties) machines. If your server is in an office or a classroom (e.g. community technology center of school), it can be configured to provide file service to PC's and Macs in addition to the Internet services listed above. This is significant because it means that individuals and whole classes can maintain their own web pages on your server, served up from a special folder in their home directory on the Linux server, which shows up as a mapped drive on their PC (no matter which machine they are logged into). Thus, if they SAVE AS to "H:\index.html" or "H:\webclass\student1\index.html" where H: points to "/home/yourname/www" or "/home/webclass/www/student1", then the web page is viewable as: "http://yoursitename/~yourname/index.html" or "http://yoursitename/~webclass/student1/index.html". Students do NOT have to FTP or SCP files from the PC where they create them to the web server. They edit them in place! They are in their own home directory (or their own folder in a class directory), not in the site's web directory tree. Thus individuals can log in and maintain their own pages, without compromising the site's web pages, but the students' pages are viewable from the Internet! Way cool!
This document describes setting up the server. However, at the end, it will include some information on setting up the client PC's too! (Soup to nuts)