2017-05-24 19:13:47 +02:00
|
|
|
---
|
|
|
|
layout: page
|
|
|
|
title: WSGI
|
|
|
|
permalink: /wsgi/
|
|
|
|
---
|
|
|
|
|
2018-04-21 09:47:28 +02:00
|
|
|
Radicale is compatible with the WSGI specification.
|
2017-05-25 19:58:22 +02:00
|
|
|
|
2017-06-01 10:40:42 +02:00
|
|
|
A configuration file can be set with the `RADICALE_CONFIG` environment variable,
|
2017-07-14 22:54:48 +02:00
|
|
|
otherwise no configuration file is loaded and the default configuration is used.
|
2017-06-01 10:40:42 +02:00
|
|
|
|
2017-05-25 19:58:22 +02:00
|
|
|
Be reminded that Radicale's default configuration enforces limits on the
|
2017-06-01 10:40:42 +02:00
|
|
|
maximum upload file size.
|
2017-06-07 21:39:54 +02:00
|
|
|
|
2017-06-25 11:02:36 +02:00
|
|
|
**Security:** The `None` authentication type disables all rights checking.
|
|
|
|
Don't use it with `REMOTE_USER`. Use `remote_user` instead.
|
2017-06-07 21:39:54 +02:00
|
|
|
|
2017-09-19 20:05:47 +02:00
|
|
|
Example **uWSGI** configuration:
|
|
|
|
|
|
|
|
```ini
|
|
|
|
[uwsgi]
|
|
|
|
http-socket = 127.0.0.1:5232
|
2020-01-15 18:43:23 +01:00
|
|
|
processes = 8
|
2017-09-19 20:05:47 +02:00
|
|
|
plugin = python3
|
2018-04-21 09:47:28 +02:00
|
|
|
module = radicale
|
2017-09-19 20:05:47 +02:00
|
|
|
env = RADICALE_CONFIG=/etc/radicale/config
|
|
|
|
```
|
|
|
|
|
2018-04-21 09:47:39 +02:00
|
|
|
Example **Gunicorn** configuration:
|
|
|
|
|
|
|
|
```shell
|
2020-01-15 18:43:23 +01:00
|
|
|
gunicorn --bind '127.0.0.1:5232' --workers 8 --env 'RADICALE_CONFIG=/etc/radicale/config' radicale
|
2018-04-21 09:47:39 +02:00
|
|
|
```
|
|
|
|
|
2017-06-25 11:02:36 +02:00
|
|
|
## Manage user accounts with the WSGI server
|
2017-06-07 21:39:54 +02:00
|
|
|
Set the configuration option `type` in the `auth` section to `remote_user`.
|
|
|
|
Radicale uses the user name provided by the WSGI server and disables
|
|
|
|
authentication over HTTP.
|