-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnginx.page.conf
39 lines (33 loc) · 1.12 KB
/
nginx.page.conf
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
server {
listen 80;
server_name localhost;
# Serve supported languages from the respective directories.
location /search/en-US/ {
alias /usr/share/nginx/html/search/en-US/;
try_files $uri /search/en-US/index.html;
}
location /search/de/ {
alias /usr/share/nginx/html/search/de/;
try_files $uri /search/de/index.html;
}
# Take the first of the user's accepted languages.
set $preferred_language $http_accept_language;
if ($http_accept_language ~* '^(.+?),') {
set $preferred_language $1;
}
# Manually match all supported languages. Fall back to en-US.
set $selected_language 'en-US';
if ($preferred_language ~* 'de') {
set $selected_language 'de';
}
# Redirect requests to `/` to the user's preferred language as determined above.
location /search/ {
rewrite ^/search/$ $selected_language/ permanent;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /search/50x.html;
location = /search/50x.html {
root /usr/share/nginx/html;
}
}