wiki:CodeSamples/Tiles/ServingTilesViaHttp

Version 1 (modified by zspitzer, 16 years ago) ( diff )

--

Serving Mapguide Tiles directly via Apache

For scalability, it can be useful to get apache to serve your map tiles directly.

This allows the map tiles to be cached and it frees up the mapguide server process, which during high load may have a request queue.

The implementation involves exposing a single map's tile cache directory via apache httpd.conf

<Directory "C:/Program Files/MapGuideOpenSource2.0/Server/Repositories/TileCache/Samples_Sheboygan_MapsTiled_Sheboygan/">
    Options Indexes
    ErrorDocument 404 /mapguide/seedSheboyganTile.php
    Header set Cache-Control "max-age=86400, public"
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
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,
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
when set to true will generate requests for the tiles as they are stored internally by the TileService,
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"

Simply add the updated Mapguide.js to the openlayers\lib\OpenLayers\Layer directory and then open the httpCacheDemo.html file to try it out.

Attachments (3)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.