-
Notifications
You must be signed in to change notification settings - Fork 51
/
install-web.txt
229 lines (156 loc) · 7.74 KB
/
install-web.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
OMERO.web deployment
====================
OMERO.web is the web application component of the OMERO platform which
allows for the management, visualization (in a fully multi-dimensional
image viewer) and annotation of images from a web browser. It also
includes OMERO.webadmin for managing users and groups.
OMERO.web is an integral part of the OMERO platform and can be deployed
with:
- IIS 6.0 or 7.0 on Microsoft Windows
- `WSGI <http://wsgi.readthedocs.org/en/latest/>`_ using a WSGI capable web
server such as `Apache 2.2+ <http://httpd.apache.org>`_ (with
`mod wsgi <http://modwsgi.readthedocs.org/en/develop/>`_ enabled) or
`nginx <http://nginx.org>`_ and
`gunicorn <http://docs.gunicorn.org/en/19.3/>`_.
- The built-in Django lightweight development server (for **testing**
only; see the :doc:`/developers/Web/Deployment` page)
- FastCGI is DEPRECATED as of 5.1.4 and note that support will be removed in
5.2. You can find more information about FastCGI and where to get modules
or packages for your distribution on the
`FastCGI website <http://www.fastcgi.com/drupal/node/3>`_.
If you need help configuring your firewall rules, see the
:doc:`/sysadmins/server-security` page.
Prerequisites
-------------
- OMERO and its prerequisites (see :doc:`server-installation`).
- Python 2 (2.6 or later)
- `Pillow`_ should be available for your distribution
- Matplotlib_ should be available for your distribution
- IIS or WSGI (or FastCGI) capable web server
Quick start
-----------
.. _using_iis:
Using IIS
~~~~~~~~~
Once you have IIS installed on your system, a straightforward set of
steps is required to get the `ISAPI
WSGI <http://code.google.com/p/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
<http://code.google.com/p/isapi-wsgi/downloads/list>`_.
If you download the *Source Distribution* (should be compatible with all
versions of Windows/IIS) unzip the archive and run::
python setup.py 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, as shown on the figure:
.. figure:: /images/installation-images/IIS7Requirements.png
:align: center
:width: 35%
:alt: IIS 7 configuration options
IIS 7 configuration options
- The :guilabel:`Advanced Settings...` for the application pool
assigned to your default site require modification using the *IIS Manager* as follows:
- :guilabel:`Idle Time-out (minutes)` - to stop the worker process from
suspending during inactivity periods, this setting needs to be
changed to 0.
.. figure:: /images/installation-images/IIS7ApplicationPool.png
:align: center
:width: 35%
:alt: IIS 7 Application Pool Advanced Settings
IIS 7 Application Pool Advanced Settings
- To avoid rendering errors on OMERO.web it is recomended to add the custom
HTTP response header in the Web site pane.
.. figure:: /images/installation-images/IIS7HTTPresponseheader.png
:align: center
:alt: IIS 7 HTTP response header
- Configure OMERO.web bindings for IIS
::
C:\omero_dist>bin\omero web iis
This will automatically add two applications, `/omero` and `/static`,
to the default web site and application pool. You can customise these
locations by setting :property:`omero.web.prefix` and
:property:`omero.web.static_url`.
.. note:: You can make manual changes to the IIS OMERO configuration
but they may be lost when OMERO.server is upgraded.
.. note:: As OMERO.web 5 is based on Django 1.6,
:property:`omero.web.session_engine` and
:property:`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
:djangodoc:`Django documentation <topics/cache/>`
for more details.
Using Apache or Nginx
~~~~~~~~~~~~~~~~~~~~~
If you wish to use Apache or Nginx please follow the Unix instructions,
see :doc:`/sysadmins/unix/install-web`.
Logging in to OMERO.web
-----------------------
Once you have deployed and started the server, you can use your browser
to access OMERO.webadmin or the OMERO.webclient:
- **http://your\_host/omero** OR, for development server:
**http://localhost:4080**
.. figure:: /images/installation-images/login.png
:align: center
:width: 55%
:alt: OMERO.webadmin login
OMERO.webadmin login
.. note::
This starts the server in the foreground. It is your
responsibility to place it in the background, if required, and
manage its shutdown.
OMERO.web Maintenance
---------------------
- Session cookies :property:`omero.web.session_expire_at_browser_close`:
- A boolean that determines whether to expire the session when the user
closes their browser. See :djangodoc:`Django Browser-length sessions vs.
persistent sessions documentation <topics/http/sessions/#browser-length-vs-persistent-sessions>`
for more details. Default: ``True``.
::
C:\omero_dist>bin\omero config set omero.web.session_expire_at_browser_close "True"
- The age of session cookies, in seconds. Default: ``86400``.
::
C:\omero_dist>bin\omero config set omero.web.session_cookie_age 86400
- Session engine:
- Each session for a logged-in user in OMERO.web is kept in the session
store. Stale sessions can cause the store to grow with time. OMERO.web
uses by default the OS file system as the session store backend and
does not automatically purge stale sessions, see
:djangodoc:`Django file-based session documentation <topics/http/sessions/#using-file-based-sessions>`
for more details. It is therefore the responsibility of the OMERO
administrator to purge the session cache using the provided management
command:
::
C:\omero_dist>bin\omero web clearsessions
It is recommended to call this command on a regular basis, for example
as a daily cron job, see
:djangodoc:`Django clearing the session store documentation <topics/http/sessions/#clearing-the-session-store>`
for more information.
.. note::
OMERO.web offers alternative session backends to automatically
delete stale data using the cache session store backend, see
:djangodoc:`Django cached session documentation <topics/http/sessions/#using-cached-sessions>`
for more details. After installing all the cache prerequisites set the following:
::
C:\omero_dist>bin\omero config set omero.web.caches '{"default": { "BACKEND": "django.core.cache.backends.memcached.MemcachedCache", "LOCATION": "127.0.0.1:11211", "TIMEOUT": "86400" } }'
C:\omero_dist>bin\omero config set omero.web.session_engine django.contrib.sessions.backends.cache
.. _customizing_your_omero_web_installation_windows:
Customizing your OMERO.web installation
---------------------------------------
All configuration options can be found on various sections of
:ref:`web_index` developers documentation. For the full list, refer to
:ref:`web_configuration` properties or:
::
C:\omero_dist>bin\omero web -h
The most popular configuration options include:
- Debug mode, see :property:`omero.web.debug`.
- Customize login page with your own logo, see
:property:`omero.web.login_logo`.
- Customizing index page, see :property:`omero.web.index_template`.
- Enabling a public user see :doc:`/sysadmins/public`.