blob: 30ad7279ecae43f08dc4fd87d8a8745a1f4a6cc3 (
plain)
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
|
{% set domain = "liwt.net" %}
#
# nginx/sites: aaronly.radicale.conf
# CalDAV/CardDAV server: dav.{{ domain }}
#
# Aaron LI
# 2017-04-27
#
{% if radicale is defined and domains_hascert[domain] %}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name dav.{{ domain }};
# SSL/TLS Certificate kindly provided by Let's Encrypt
ssl_certificate /usr/local/etc/ssl/acme/{{ domain }}/fullchain.pem;
ssl_certificate_key /usr/local/etc/ssl/acme/private/{{ domain }}.pem;
# Reverse proxy to Radicale
location / {
# Auth through HTTP
auth_basic "Radicale ...";
auth_basic_user_file /usr/local/etc/nginx/auth/radicale.passwd;
# XXX: Hack to support "username@domain"-style logins
if ($remote_user ~ ^(?<user_>[^@/]+)(@[^/]+)?$) {
set $username $user_;
}
# When a reverse proxy is used, the path at which Radicale is
# available must be provided via the "X-Script-Name" header.
# The proxy must remove the location from the URL path that is
# forwarded to Radicale.
# http://radicale.org/proxy/
#
#proxy_pass http://127.0.0.1:5232/; # Note the trailing "/"
#proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxy_set_header X-Forwarded-Proto $scheme;
#proxy_set_header X-Remote-User $username;
# WSGI interface: http://radicale.org/wsgi/
include uwsgi_params;
# Require to set 'auth/type' to 'remote_user' in config file
uwsgi_param REMOTE_USER $username;
uwsgi_pass unix:/tmp/uwsgi-radicale.sock;
}
}
{% endif %}
|