Page Contents


Feature List

Previous topic

OMERO.web deployment

Next topic

DEPRECATED: OMERO.web Apache and mod_wsgi deployment (Unix/Linux)

This Page


This documentation is for OMERO 5.2. This version is now in maintenance mode and will only be updated in the event of critical bugs or security concerns. OMERO 5.3 is expected in the first quarter of 2017.

OMERO.web IIS deployment (Windows)


OMERO 5.2 is the last major version which will feature Windows support for OMERO.server and OMERO.web deployment. See this blog post for details. If you are installing a new server, we highly recommend you use a different OS (see Version requirements).

IIS configuration (Windows)


Since OMERO 5.2, the OMERO.web framework no longer bundles a copy of the Django package, instead manual installation of the Django dependency is required. It is highly recommended to use Django 1.8 on Windows. For more information see Python on the Version requirements page.

Install Django 1.8 using package requirements file:

C:\> pip install -r C:\OMERO.server\share\web\requirements-py27-win.txt


For more details refer to Django 1.8 installation on Windows.

Install additional Python libraries:

Download the following whl files then run:

set PYTHONPIP=C:\Python27\Scripts\pip.exe

%PYTHONPIP% install matplotlib-1.4.3-cp27-none-win_amd64.whl
%PYTHONPIP% install numpy-1.9.2+mkl-cp27-none-win_amd64.whl
%PYTHONPIP% install numexpr-2.4.3-cp27-none-win_amd64.whl
%PYTHONPIP% install Pillow-2.8.1-cp27-none-win_amd64.whl
%PYTHONPIP% install pyparsing-2.0.3-py2-none-any.whl
%PYTHONPIP% install python_dateutil-2.4.2-py2.py3-none-any.whl
%PYTHONPIP% install pytz-2015.2-py2.py3-none-any.whl
%PYTHONPIP% install six-1.9.0-py2.py3-none-any.whl
%PYTHONPIP% install tables-3.1.1-cp27-none-win_amd64.whl
%PYTHONPIP% install virtualenv-12.1.1-py2.py3-none-any.whl

%PYTHONPIP% install pywin32-219-cp27-none-win_amd64.whl
C:\Python27\Scripts\ -install

A straightforward set of steps is required to get the ISAPI WSGI handler for OMERO.web working with your IIS deployment.

  • Ensure that the ISAPI for IIS options are installed.

  • Download and install an ISAPI WSGI. If you download the Source Distribution (should be compatible with all versions of Windows/IIS) unzip the archive and run:

    python install

    Alternatively if you are using a 32-bit system you can use the Windows Installer.

  • For extended compatibility with multiple IIS versions ISAPI WSGI uses the IIS 6 WMI interface to interact with your IIS deployment. If you are using IIS 7 you must enable the IIS 6 WMI backwards compatibility options. Also make sure to install the ISAPI extensions and filters, as shown in the figure below. For further information see IIS Documentation - ISAPI Filters respectively IIS Documentation - ISAPI/CGI Restrictions

IIS 8 configuration options

IIS 8 configuration options

  • The Advanced Settings... for the application pool assigned to your default site require modification using the IIS Manager as follows:
    • Idle Time-out (minutes) - to stop the worker process from suspending during inactivity periods, this setting needs to be changed to 0.
IIS 8 Application Pool Advanced Settings

IIS 8 Application Pool Advanced Settings

  • To avoid rendering errors on OMERO.web it is recommended to add the custom HTTP response header in the Web site pane.
IIS 7 HTTP response header
  • Make sure that OMERO’s log directory has full read/write permissions for all users
Log folder permissions
  • Configure OMERO.web bindings for IIS

    C:\OMERO.server> bin\omero web iis

    This will automatically add two applications, /omero and /static, to the default web site and application pool. You can customize these locations by setting omero.web.prefix and omero.web.static_url.


    You can make manual changes to the IIS OMERO configuration but they may be lost when OMERO.server is upgraded.


    As OMERO.web 5 is based on Django 1.8, omero.web.session_engine and omero.web.caches should be unset.

    C:\omero_dist>bin\omero config set omero.web.session_engine
    C:\omero_dist>bin\omero config set omero.web.caches

    If your deployment requires additional cache store please follow the Django documentation for more details.