= Deploy !MapGuide Web Application to Web Servers on Windows =
this document is written with 64-bit windows 7 machine as the testing platform, the process may be slightly different under windows xp. Web applications are refered in mapguide project as web extensions, but they are really the same thing.
Under windows, you have the options to deploy mapguide web application to either Apache, or Tomcat, or IIS
Basic knowledge of 32bit vs 64bit machine: 32bit applications work on 64bit machine, not the other way. 32bit application does not get along with 64bit application if they have to work together. So when downloading Apache or other applications, bear in mind they have to be compatible with either hardware or software. Confused? then ignore what I say :)
== Apache2 ==
'''Note''' If you are using Apache as the web server, it is assumed that you should know how to configure apache with an web application, otherwise, please read [http://httpd.apache.org/docs/2.2/ Apache Documentation] first.
1. Download and Install Apache2.2.16 for Windows from [http://www.apachelounge.com/download/ Here]. Unzip the downloaded file to anywhere, in this document, we unzip it to c:\Apache2
Apache is also available under svn/mgdev/Oem/LinuxApt, which can be copy and pasted to anywhere, but do this only if you know what you are doing. apache.org does not submit any build for 64-bit machines, try [http://www.blackdot.be/?inc=apache/binaries this site] to obtain a binary 64-bit build.
2. add the following lines to httpd.conf
{{{
LoadModule mod_mgmapagent modules/mod_mgmapagent.so
Alias /mapguide "c:/mapguideopensource-2.2-beta1/Web/www"
AllowOverride All
Options All
Order allow,deny
Allow from all
AddHandler php5-script .php
AddHandler mgmapagent_handler fcgi
RewriteEngine on
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
}}}
'''Note:''' '''mod_mgmapagent''' is the module name for mapguide agent, which is hardcoded in source code, so it can't be anything else
4. start apache http server
{{{
cd
httpd.exe --help
httpd.exe -k install
httpd.exe -k start
}}}
5. Troubleshooting
* visit [http://tud.at/programm/apache-ssl-win32-howto.php3 this site] for common apache errors
* ''HTTP 403: you don't permission to /mapguide/mapadmin/login.php'' or ''anything site under /mapguide/'' : this error means your access setting in apache config file is wrong.
* browser opens to the source code of php file instead of a web page: this error means Apache is not configured correctly to use PHP.
6. Further Adventure
follow the similare concept to configure Apache to work with java/jsp viewer
== Tomcat ==
Deploying MapGuide to Tomcat is only supported via Apache HTTP Server for now.
== JBoss ==
In theory, a web application should be able to be deployed to any web server with some instrumentation. We never tried to deploy !MapGuide Web App to JBoss, so this might be a future work if there is request for it.
=== IIS ===