]> Untitled Git - lemmy.git/blob - docker/federation/nginx.conf
Version 0.10.0-rc.10
[lemmy.git] / docker / federation / nginx.conf
1 events {
2     worker_connections 1024;
3 }
4
5 http {
6     upstream lemmy-alpha {
7         server "lemmy-alpha:8541";
8     }
9     upstream lemmy-alpha-ui {
10         server "lemmy-alpha-ui:1234";
11     }
12     server {
13         listen 8540;
14         server_name 127.0.0.1;
15         access_log  off;
16
17         # Upload limit for pictshare
18         client_max_body_size 50M;
19
20         location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
21             proxy_pass http://lemmy-alpha;
22             proxy_http_version 1.1;
23             proxy_set_header Upgrade $http_upgrade;
24             proxy_set_header Connection "upgrade";
25         }
26         location / {
27             set $proxpass http://lemmy-alpha-ui;
28             if ($http_accept = "application/activity+json") {
29               set $proxpass http://lemmy-alpha;
30             }
31             if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
32               set $proxpass http://lemmy-alpha;
33             }
34             proxy_pass $proxpass;
35
36             proxy_set_header X-Real-IP $remote_addr;
37             proxy_set_header Host $host;
38             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
39
40             # Cuts off the trailing slash on URLs to make them valid
41             rewrite ^(.+)/+$ $1 permanent;
42         }
43         location /iframely/ {
44             proxy_pass http://iframely:80/;
45             proxy_set_header X-Real-IP $remote_addr;
46             proxy_set_header Host $host;
47             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
48         }
49     }
50
51     upstream lemmy-beta {
52         server "lemmy-beta:8551";
53     }
54     upstream lemmy-beta-ui {
55         server "lemmy-beta-ui:1234";
56     }
57     server {
58         listen 8550;
59         server_name 127.0.0.1;
60         access_log off;
61
62         # Upload limit for pictshare
63         client_max_body_size 50M;
64
65         location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
66             proxy_pass http://lemmy-beta;
67             proxy_http_version 1.1;
68             proxy_set_header Upgrade $http_upgrade;
69             proxy_set_header Connection "upgrade";
70         }
71         location / {
72             set $proxpass http://lemmy-beta-ui;
73             if ($http_accept = "application/activity+json") {
74               set $proxpass http://lemmy-beta;
75             }
76             if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
77               set $proxpass http://lemmy-beta;
78             }
79             proxy_pass $proxpass;
80
81             proxy_set_header X-Real-IP $remote_addr;
82             proxy_set_header Host $host;
83             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
84
85             # Cuts off the trailing slash on URLs to make them valid
86             rewrite ^(.+)/+$ $1 permanent;
87         }
88         location /iframely/ {
89             proxy_pass http://iframely:80/;
90             proxy_set_header X-Real-IP $remote_addr;
91             proxy_set_header Host $host;
92             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
93         }
94     }
95
96     upstream lemmy-gamma {
97         server "lemmy-gamma:8561";
98     }
99     upstream lemmy-gamma-ui {
100         server "lemmy-gamma-ui:1234";
101     }
102     server {
103         listen 8560;
104         server_name 127.0.0.1;
105         access_log off;
106
107         # Upload limit for pictshare
108         client_max_body_size 50M;
109
110         location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
111             proxy_pass http://lemmy-gamma;
112             proxy_http_version 1.1;
113             proxy_set_header Upgrade $http_upgrade;
114             proxy_set_header Connection "upgrade";
115         }
116         location / {
117             set $proxpass http://lemmy-gamma-ui;
118             if ($http_accept = "application/activity+json") {
119               set $proxpass http://lemmy-gamma;
120             }
121             if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
122               set $proxpass http://lemmy-gamma;
123             }
124             proxy_pass $proxpass;
125
126             proxy_set_header X-Real-IP $remote_addr;
127             proxy_set_header Host $host;
128             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
129
130             # Cuts off the trailing slash on URLs to make them valid
131             rewrite ^(.+)/+$ $1 permanent;
132         }
133         location /iframely/ {
134             proxy_pass http://iframely:80/;
135             proxy_set_header X-Real-IP $remote_addr;
136             proxy_set_header Host $host;
137             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
138         }
139     }
140
141     upstream lemmy-delta {
142         server "lemmy-delta:8571";
143     }
144     upstream lemmy-delta-ui {
145         server "lemmy-delta-ui:1234";
146     }
147     server {
148         listen 8570;
149         server_name 127.0.0.1;
150         access_log off;
151
152         # Upload limit for pictshare
153         client_max_body_size 50M;
154
155         location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
156             proxy_pass http://lemmy-delta;
157             proxy_http_version 1.1;
158             proxy_set_header Upgrade $http_upgrade;
159             proxy_set_header Connection "upgrade";
160         }
161         location / {
162             set $proxpass http://lemmy-delta-ui;
163             if ($http_accept = "application/activity+json") {
164               set $proxpass http://lemmy-delta;
165             }
166             if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
167               set $proxpass http://lemmy-delta;
168             }
169             proxy_pass $proxpass;
170
171             proxy_set_header X-Real-IP $remote_addr;
172             proxy_set_header Host $host;
173             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
174
175             # Cuts off the trailing slash on URLs to make them valid
176             rewrite ^(.+)/+$ $1 permanent;
177         }
178         location /iframely/ {
179             proxy_pass http://iframely:80/;
180             proxy_set_header X-Real-IP $remote_addr;
181             proxy_set_header Host $host;
182             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
183         }
184     }
185
186     upstream lemmy-epsilon {
187         server "lemmy-epsilon:8581";
188     }
189     upstream lemmy-epsilon-ui {
190         server "lemmy-epsilon-ui:1234";
191     }
192     server {
193         listen 8580;
194         server_name 127.0.0.1;
195         access_log off;
196
197         # Upload limit for pictshare
198         client_max_body_size 50M;
199
200         location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
201             proxy_pass http://lemmy-epsilon;
202             proxy_http_version 1.1;
203             proxy_set_header Upgrade $http_upgrade;
204             proxy_set_header Connection "upgrade";
205         }
206         location / {
207             set $proxpass http://lemmy-epsilon-ui;
208             if ($http_accept = "application/activity+json") {
209               set $proxpass http://lemmy-epsilon;
210             }
211             if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
212               set $proxpass http://lemmy-epsilon;
213             }
214             proxy_pass $proxpass;
215
216             proxy_set_header X-Real-IP $remote_addr;
217             proxy_set_header Host $host;
218             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
219
220             # Cuts off the trailing slash on URLs to make them valid
221             rewrite ^(.+)/+$ $1 permanent;
222         }
223         location /iframely/ {
224             proxy_pass http://iframely:80/;
225             proxy_set_header X-Real-IP $remote_addr;
226             proxy_set_header Host $host;
227             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
228         }
229     }
230 }