This is what I spent this morning doing and this afternoon writing up the steps. My line manager was kind enough to allow me to post the document about what is needed to be done since we had to find a couple of “gotcha’s” out the hard way. Some of this information was gleaned from here and here.

It’s currently here as pure unformatted text. Once I get the chance this evening I will tidy it up a bit.

Installing IIS6, PHP5.2.0, MySQL5.0.27 and Mantis1.0.6 to Windows 2003 Server R2 Standard Edition

Files needed:

IIS 6.0

  1. Insert the Microsoft Windows Server 2003 R2 Standard Edition CD into the tray.
  2. Click Start » Control Panel » Add or Remove Programs.
  3. Select Add/Remove Windows Components from the left-hand sidebar.
  4. Select Application Server in the Windows Component Wizard.
  5. With Application Server high lit, click the details and check ASP.NET.
  6. Okay everything until you are back to the wizard. Click next.
  7. If you get a Files Needed message, select the drive that the CD-Rom is located in and click OK.
  8. Click OK finish installation.
  9. To test the install, open your browser and type http://localhost/ into the address bar. You should see a This page is under construction message.

MySQL 5.0.27

  1. Extract Setup.exe from the zip file and run it. Ignore the warning messages from 2003 Server.
  2. Select Typical Setup and click next until you get to the sign up step. Select Skip and complete the installation.
  3. In the Configuration Wizard pick Detailed Configuration from the first option screen. Click next.
  4. Pick Server Machine on the next screen. Next.
  5. Select the Non-transactional for database usage. Next.
  6. Pick the first option (Decision Support (DSS)/OLAP). Next.
  7. Make sure both options are checked at the next screen. Next.
  8. Use the standard character set. Next.
  9. Allow MySQL to install as a Windows Service and launch automatically with Windows.
  10. Set the root password to ‘#######’. DO NOT ENABLE ROOT ACCESS FROM REMOTE MACHINES AND CERTAINLY DO NOT CREATE AN ANONYMOUS ACCOUNT.
  11. Execute Settings.

MySQL GUI Tools 5.0r6

  1. Start the install by running the installer
  2. Accept the terms and conditions, the install directory and complete setup.

PHP 5.2.0

  1. Extract the PHP 5.2.0 zip to C:\Program Files\PHP
  2. Extract php_5.2.0_mysqli_5.0.27-win32.zip to the php installation directory.
  3. Copy libmysql.dll to WINDOWS\System32 directory.
  4. Rename php.ini-recommended to php.ini
  5. Open php.ini and uncomment cgi.force_redirect and set it to 0 (zero).
  6. Copy php_browscap.ini to php\extras and set the path to it under browscap.
  7. Set session.save_path to php\sessions. Create the directory if needed.
  8. Set the extensions (or replace them with this list):
  9. extension=php_mbstring.dll
    extension=php_bz2.dll
    extension=php_cpdf.dll
    extension=php_curl.dll
    extension=php_dba.dll
    extension=php_dbase.dll
    extension=php_dbx.dll
    ;extension=php_exif.dll
    extension=php_fdf.dll
    extension=php_filepro.dll
    extension=php_gd2.dll
    extension=php_gettext.dll
    ;extension=php_ifx.dll
    extension=php_iisfunc.dll
    extension=php_imap.dll
    extension=php_interbase.dll
    extension=php_java.dll
    extension=php_ldap.dll
    ;extension=php_mcrypt.dll
    extension=php_mhash.dll
    extension=php_mime_magic.dll
    extension=php_ming.dll
    extension=php_mssql.dll
    extension=php_msql.dll
    extension=php_mysql.dll
    extension=php_mysqli.dll
    ;extension=php_oci8.dll
    extension=php_openssl.dll
    ;extension=php_oracle.dll
    extension=php_pdf.dll
    extension=php_pgsql.dll
    extension=php_shmop.dll
    extension=php_snmp.dll
    extension=php_sockets.dll
    ;extension=php_sybase_ct.dll
    extension=php_tidy.dll
    extension=php_ffi.dll
    extension=php_xmlrpc.dll
    extension=php_xsl.dll
    ;extension=php_yaz.dll
    extension=php_zip.dll

  10. Add the install path for PHP to the user environment path.
  11. Add HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath=C:\Program Files\PHP to the registry.

Mantis 1.0.6

  1. Extract the Mantis install files to C:\Inetpub\wwwroot\mantis.

Integration

  1. Stop the MySQL server. Open my.ini and change the root database location to d:/db/mysql5.
  2. Copy the original database files/directories from the old server to the MySQL data directory (d:\db\mysql5\).
  3. Create a new user, mantis/mantis, in MySQL Administrator. Give it full rights to the Mantis DB. Restart MySQL.
  4. Start IIS Manager. Add a new website to the server using C:\Inetpub\wwwroot\mantis as the location.
  5. Check all boxes for permissions, ignoring any warnings.
  6. Open the website properties (right click » properties), select the Home Directory tab, click configuration, click add. For the executable browse for php5isapi.dll which is located in the php install directory and give the extension as .php. Set ‘Limit To’ to GET, POST, HEAD.
  7. In mantis\config_inc.php modify the following lines:
  8. $g_db_username = mantis
    $g_db_password = mantis
    $g_database_name = mantis

  9. Open IIS Manager and under Web Service Extensions set the name to PHP ISAPI Extension and set the required files to php5isapi.dll.
  10. Add index.php to the list of default content pages in the Documents tab.
  11. Turn off the internal firewall in Windows 2003 Server.
  12. Restart Windows 2003 Server.
  13. Start your browser. Enter http://localhost/admin/ into the address bar. Select Upgrade Your Installation, then Upgrade Now. Perform Basic Upgrade and the String Escape Fixes afterwards.

Fin.