[[PageOutline]] This page is one of the !MapGuide Community CodeSamples. Visit the CodeSamples page to view more! == Serving Mapguide Tiles directly == For scalability, it can be useful to get your web server to serve your map tiles directly. This allows the map tiles to be proxied and cached, freeing up the Mapguide Server process, which during high load may have a request queue. Openlayers has native support for this via the [http://dev.openlayers.org/docs/files/OpenLayers/Layer/MapGuide-js.html#OpenLayers.Layer.MapGuide.useHttpTile useHttpTile] layer option === Apache === The implementation involves exposing a single map's tile cache directory via apache httpd.conf. This sample configuration also flags the tiles to expire after one day. {{{ Options Indexes ErrorDocument 404 /mapguide/seedSheboyganTile.php Header set Cache-Control "max-age=86400, public" AllowOverride None Order allow,deny Allow from all Alias /sheboyganTiles/ "C:/Program Files/MapGuideOpenSource2.0/Server/Repositories/TileCache/Samples_Sheboygan_MapsTiled_Sheboygan/" }}} Restart Apache The attached file contains seedSheboyganTile.php which is used to generate tiles which haven't been seeded yet, [[BR]] save it in "C:\Program Files\MapGuideOpenSource2.0\WebServerExtensions\www" There is also a modified version of openlayers Mapguide.js which has a new option called "useHttpTile" which [[BR]] when set to true will generate requests for the tiles as they are stored internally by the TileService, [[BR]] the layer url then becomes http://localhost:8008/sheboyganTiles/ The httpCacheDemo.html file assumes you have openlayers installed under "C:\Program Files\MapGuideOpenSource2.0\WebServerExtensions\www\openlayers" [[BR]] ~~Simply add the updated Mapguide.js to the openlayers\lib\OpenLayers\Layer directory and then open the httpCacheDemo.html file to try it out. ~~ '''update''' openlayers support is now included in trunk, you should ignore the included mapguide.js file. === IIS === The attached file contains getTile.php which is an IIS version of the Apache seedSheboyganTile.php file mentioned above. Set up IIS as follows: 1. In IIS select the virtual folder containing the tile cache, right-click and select Properties. 1. In the Properties dialog, select the Custom Errors tab. 1. Choose 404 from the list and click Edit. 1. In the Edit Custom Error Properties dialog choose URL for Message Type and enter a relative path to this PHP file, e.g. "/mapguide/blah/getTile.php". 1. Save this file in the relevant location, e.g. "C:\Program Files\MapGuideOpenSource2.0\WebServerExtensions\www\blah\getTile.php". Note: 1. This script does not handle extra parameters, i.e. the "querystring" parameter added under http://trac.openlayers.org/ticket/1622. 1. You must hard-code the tile map repository definition and access credentials inside this file.