[Tilecache] tilecache on IIS

Diego Guidi diegoguidi at gmail.com
Sun May 18 05:40:11 EDT 2008


take a look at this tutorial:
http://viswaug.wordpress.com/2008/02/03/setting-up-tilecache-on-iis/

On Sat, May 17, 2008 at 8:48 PM, Tibor Arpas <tibor at infinit.sk> wrote:
> Hi,
>
> I saw some requests of people for the abovementioned combination but no easy
> answer. Sure there is the option of putting apache with mod_proxy in front
> of your IIS but that adds some administration complexicity.
>
> I hoped for a better solution and after some experimenting I got Tilecache
> working with the combination
>
> IIS - Pythonwin32 ISAPI - isapi_wsgi
>
> I pretty much followed the tutorial here:
> http://wiki.pylonshq.com/display/pylonscookbook/Serving+a+Pylons+app+with+IIS
>
> The script where it's necessary to put Tilecache instead of Pylons goes like
> this:
>
> import isapi_wsgi
> from TileCache.Service import wsgiApp
>
> # The entry points for the ISAPI extension.
> def __ExtensionFactory__():
>     return isapi_wsgi.ISAPIThreadPoolHandler(wsgiApp)
>
> if __name__=='__main__':
>     from isapi.install import *
>     params = ISAPIParameters()
>     sm = [
>         ScriptMapParams(Extension="*", Flags=0)
>     ]
>     vd = VirtualDirParameters(Name="tilecache_isapi",
>                               Description = "tilecache_isapi",
>                               ScriptMaps = sm,
>                               ScriptMapUpdate = "replace"
>                               )
>     params.VirtualDirs = [vd]
>     HandleCommandLine(params)
>
> Unfortunately after trying the first request Tilecache didn't go through
> it's initialization writing this error:
>
> Internal Extension Error: Failed to import callback module 'tilecache_isapi'
> Traceback (most recent call last):
>   File "C:\ActivePython25\scripts\tilecache_isapi.py", line 19, in <module>
>     from TileCache.Service import wsgiApp
>   File
> "c:\activepython25\lib\site-packages\tilecache-2.02-py2.5.egg\TileCache\_
> _init__.py", line 3, in <module>
>     from Layer import *
>   File
> "c:\activepython25\lib\site-packages\tilecache-2.02-py2.5.egg\TileCache\L
> ayer.py", line 6, in <module>
>     from Service import TileCacheException
>   File
> "C:\ActivePython25\lib\site-packages\tilecache-2.02-py2.5.egg\TileCache\S
> ervice.py", line 14, in <module>
>     workingdir = os.path.abspath(os.path.join(os.getcwd(),
> os.path.dirname(sys.a
> rgv[0])))
> AttributeError: 'module' object has no attribute 'argv'
>
> Seem's like there is no sys.argv attribute in our environment :-(.
>
> I hardcoded my tilecache.cfg location along the line 14 of
> Tilecache\Service.py and then it worked :-). Of course hacking the original
> code is ugly but I'm new to both Python and Tilecache. My first thought
> would be to create a subclass of Tilecache.Service and providing my own
> initialization methods. But unfortunately this particular lines of
> Tilecache.Service are not enclosed in method which I could override. What
> would be the right approach?
>
> Also I didn't test stability and performance, so If anybody has succes using
> this combination I would be thankful for comments on these aspects.
>
> Regards,
> Tibor
>
> _______________________________________________
> Tilecache mailing list
> Tilecache at openlayers.org
> http://openlayers.org/mailman/listinfo/tilecache
>
>



-- 
Diego Guidi
http://lacorrente.blogspot.com



More information about the Tilecache mailing list