I've had several people lately ask me how to install a web server on windows, so here goes
Using IIS is definatly the easiest way to do it. Just install IIS from the Windows cd and most of the configuration can be done automatically. IIS already ships with ASP support, and Perl, PHP, and MySQL is fairly painless.
How to install PHP on IIS.
The newest version of PHP at the time I write this is 4.2.1 . You can download the PHP binary in a Windows installer format from here: [link]http://www.php.net/distributions/php-4.2.1-installer.exe[/link]
After IIS is installed and you know that it is working by going to [link]http://localhost/[/link] , run the installer for PHP, choose a standard installation, and it will give you a choice of web servers. Choose IIS 4.0 or higher and the configuration will be done automatically. To test and make sure that it works, open c:inetpubwwwroot and make a new file named phpinfo.php with this as it's contents. <?php phpinfo(); ?> and call it from your browser by going to [link]http://localhost/phpinfo.php[/link] . If it works you should see a page in your browser with how PHP is configured on your system. If it didn't work and you're asked to save the file, there are two things that you can try. The first thing is to restart IIS and see if it works, and if not, then do the following. Go to computer management, and then your default website properties under Internet Information Services. Under home directory make sure that scripts and executables have execute permissions, then click the button that says configuration, scroll through the list and see if .php is in the list, and if not, add it with the following options. Executable: C
hpphp.exe (will vary depending on the path you chose to install php to), extension: .php , verbs: all verbs, check Script Engine, and hit ok, then restart IIS again. If it still doesn't work (which is very unlikely) then try running the PHP installer again.
How to install Perl under IIS.
Perl can be a bit more complicated. You'll need to download ActivePerl from here: [link]http://downloads.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.632-MSWin32-x86.msi[/link] . As with PHP, the installer should be able to automatically configure IIS, although it doesn't do it as throughly as it should. During the installation it will give you a choice of four things that it can automatically do:
#1. Add Perl to the PATH enviromental variable. Choose yes.
#2. Create Perl file extension association. Optional, but I normally choose yes.
#3. Create IIS script mapping for Perl. Choose yes.
#4. Create IIS script mapping for Perl ISAPI. Choose yes.
After the installer is finished, go back into the properties for your default web site as you did earlier for PHP and go back into the configure options. Go again to add, and put the following into the options. Executable: C:Perlbinperl.exe "%s" %s (again, if you installed to a different path then edit accordingly), under verbs choose limit to and put the following in the dialog box: GET,HEAD,POST, uncheck Script engine and put a checkmark in check that file exists. Hit ok, restart IIS again, and grab something that uses perl to test with, such as greymatter, avalible from [link]http://noahgrey.com/greysoft/.[/link] (Note, in most perl scripts you will have to open the script up in a text editor and you will see something that resembles the following in the first few lines of the script: #!/usr/bin/perl , you will need to change this to direct it towards your path to perl, for me (with perl installed to C:Perl, it will look like #!C:/Perl/perl . Ikonboard and a few other bulletin boards writtin in Perl need a few perl addon modules to run, which I will cover in an update to this later.
Getting MySQL on windows.
Most boards nowadays and many other things use MySQL databases to store information (for example, BetaONE's VBB relies on a MySQL database, which has grown to be nearly 110 megs in size
). Under both IIS and Apache the installation is the same, as you don't have to edit the servers properties this time around.
Head over to [link]http://www.mysql.com/downloads/download.php?file=Downloads/MySQL-3.23/mysql-3.23.51-win.zip[/link] and grab MySQL from one of the mirrors. Unpack the zip file and run the installer. After it is finished, open x:MySQLbinwinmysqladmin.exe where x is the drive letter that you installed MySQL to. It will prompt you to set a username and password, which will be your MySQL root, or super user and pass. Open up the administrative toolsservices applet in the control panel and make sure that the MySQL service is started and you should be good to go. For easy MySQL administration, such as creating databases, PHPMyAdmin is one of the easiest ways to go. It is avalible from [link]http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.2.6-php.zip.[/link] Unpack the archive to a subfolder under your wwwroot folder and edit the config file, config_inc.php . There are a few variables that you need to set in the config file, such as the url which is used to access PHPMyAdmin as well as the username and password that you gave MySQL when you ran winmysqladmin.exe . Then go to [link]http://localhost/phpmyadmin[/link] (again, this varies depending on the url you set in the config file as well as the foldername that you put phpmyadmin in) and you'll have an easy web based admin tool to administer MySQL.
I'll update this later for Apache and more advanced configuration, as well as if anyone has any questions