= Install MapGuide 2.4 on IIS = Step-by-step instructions to installing MapGuide 2.4 on IIS. This guide has also been successfully tested with MapGuide 2.5 (Preview release). === Prerequisite: Microsoft .NET Framework 4 === If Microsoft .NET Framework 4 or 4.5 is not installed, install [http://www.microsoft.com/download/details.aspx?id=17851 Microsoft .NET Framework 4 (Web Installer)]. === Prerequisite: IIS === For Windows 7: 1. Open Start -> Control Panel -> Programs -> Programs and Features -> Turn Windows features on or off 1. Install: * Internet Information Services, which also selects several default components * Internet Information Services -> World Wide Web Services -> Application Development Features -> .NET Extensibility * Internet Information Services -> World Wide Web Services -> Application Development Features -> ASP.NET, which also selects ISAPI Extensions and ISAPI Filters * Internet Information Services -> World Wide Web Services -> Application Development Features -> CGI [[br]][[Image(screenshot.1.jpg)]] === Prerequisite: FastCGI for IIS === For IIS6 and below, install [http://www.iis.net/download/FastCGI FastCGI for IIS]. For IIS7 and above, enable [http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis/#EnableFastCGI FastCGI in IIS]. === Install MapGuide === For Windows 7/Windows Server 2008 R2 and below, use the installer and select IIS configuration to automatically configure IIS. For Windows 8/Windows Server 2012 (untested), use the installer and select manual configuration. IIS will need to be manually configured. === Manual configuration: IIS === If MapGuide has been installed with a manual configuration, IIS will need to be manually configured. 1. For Windows 7, open Start -> Control Panel -> System and Security -> Administrative Tools -> Internet Information Services (IIS) Manager 1. Open [root]\Application Pools -> Actions -> Add Application Pool... * Name: MapGuide24AppPool * .NET Framework version: .NET Framework v4.0.30319 * Managed pipeline mode: Integrated * Start application pool immediately: True [[br]][[Image(screenshot.2.jpg)]] 1. Open [root] -> FastCGI Settings -> Actions -> Add Application... * Full Path: C:\Program Files\OSGeo\MapGuide\Web\Php\php-cgi.exe * FastCGI Properties: * Max Instances: 0 * Activity Timeout: 70 [[br]][[Image(screenshot.3.jpg)]] 1. Open [root] -> ISAPI and CGI Restrictions -> Actions -> Add... * ISAPI or CGI path: C:\Program Files\OSGeo\MapGuide\Web\www\mapagent\isapi_MapAgent.dll * Description: MapGuide 2.4 MapAgent ISAPI handle * Allow extension path to execute: True [[br]][[Image(screenshot.4.jpg)]] 1. Open [root] -> MIME Types -> Actions -> Add... * File name extension: .json * MIME type: application/json [[br]][[Image(screenshot.13.jpg)]] 1. Open [root]\Sites\Default Web Site -> Actions -> View Applications -> Actions -> Add Application... * Alias: mapguide * Application pool: MapGuide24AppPool * Physical path: C:\Program Files\OSGeo\MapGuide\Web\www [[br]][[Image(screenshot.5.jpg)]] 1. Open [root]\Sites\Default Web Site\mapguide -> Error Pages -> Select "401" -> Actions -> Remove * Are you sure that you want to remove the selected custom error page? Yes 1. Open [root]\Sites\Default Web Site\mapguide -> Handler Mappings -> Actions -> Add Module Mapping... * Request path: *.php * Module: FastCgiModule * Executable (optional): C:\Program Files\OSGeo\MapGuide\Web\Php\php-cgi.exe * Name: MapGuide_2.4_PHP_via_FastCGI [[br]][[Image(screenshot.6.jpg)]] * Do you want to create a FastCGI application for this executable? Yes 1. Right-click [root]\Sites\Default Web Site\mapguide\mapagent -> Convert to Application * Alias: mapagent * Application pool: MapGuide24AppPool * Physical path: C:\Program Files\OSGeo\MapGuide\Web\www\mapagent [[br]][[Image(screenshot.7.jpg)]] 1. Open [root]\Sites\Default Web Site\mapguide\mapagent -> Handler Mappings -> Select "CGI-exe" -> Actions -> Edit Feature Permissions... * Read: True * Write: True * Execute: True [[br]][[Image(screenshot.12.jpg)]] 1. Open [root]\Sites\Default Web Site\mapguide\mapagent -> Handler Mappings -> Actions -> Add Script Map... * Request path: mapagent.fcgi * Executable: C:\Program Files\OSGeo\MapGuide\Web\www\mapagent\isapi_MapAgent.dll * Name: MapGuide 2.4 MapAgent ISAPI handler [[br]][[Image(screenshot.8.jpg)]] * Open Request Restrictions... * Mappings -> Invoke handler only if request is mapped to: False [[br]][[Image(screenshot.9.jpg)]] * Do you want to allow this ISAPI extension? Yes 1. Right-click [root]\Sites\Default Web Site\mapguide\mapviewernet -> Convert to Application * Alias: mapviewernet * Application pool: MapGuide24AppPool * Physical path: C:\Program Files\OSGeo\MapGuide\Web\www\mapviewernet [[br]][[Image(screenshot.10.jpg)]] 1. For .NET API: Right-click [root]\Sites\Default Web Site\mapguide -> Add Application... * Alias: mapviewerajax * Application pool: MapGuide24AppPool * Physical path: C:\Program Files\OSGeo\MapGuide\Web\www\mapviewernet [[br]][[Image(screenshot.11.jpg)]] 1. For .NET API: Open [root]\Sites\Default Web Site\mapguide\mapviewerajax -> Default Document -> Add... * Name: ajaxviewer.aspx === Test === 1. Open http:\\localhost\mapguide\mapagent\index.html -> Other -> Create Session -> Submit * Username: Administrator * Password: admin == Previous releases == * [wiki:ConfigureGuide22Windows Configure MapGuide 2.2 on Windows] * [wiki:MGOS2onVistaIIS7 Installing MapGuide Open Source 2.0 Web Server Extensions on Vista / Windows Server 2008 / IIS7]