64 lines
2.1 KiB
Nginx Configuration File
64 lines
2.1 KiB
Nginx Configuration File
events {
|
|
worker_connections 1024;
|
|
}
|
|
|
|
http {
|
|
# Browser preferred language detection (does NOT require AcceptLanguageModule)
|
|
map $http_accept_language $accept_language {
|
|
~*^fr fr;
|
|
~*^en en;
|
|
}
|
|
|
|
types {
|
|
module js;
|
|
}
|
|
|
|
include /etc/nginx/mime.types;
|
|
|
|
server {
|
|
listen 80;
|
|
server_name codiki.org;
|
|
root /usr/share/nginx/html;
|
|
|
|
# Fallback to default language if no preference defined by browser
|
|
if ($accept_language ~ "^$") {
|
|
set $accept_language "fr";
|
|
}
|
|
|
|
location ~ ^/$ {
|
|
# Redirect "/" to Angular app in browser's preferred language
|
|
rewrite ^/$ /$accept_language permanent;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-Host $server_name;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
}
|
|
|
|
# Everything under the Angular app is always redirected to Angular in the correct language
|
|
location ~ ^/fr/ {
|
|
alias /usr/share/nginx/html/fr/;
|
|
try_files $uri$args $uri$args/ /fr/index.html?$args;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-Host $server_name;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
}
|
|
|
|
location ~ ^/en/ {
|
|
alias /usr/share/nginx/html/en/;
|
|
try_files $uri$args $uri$args/ /en/index.html?$args;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-Host $server_name;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
}
|
|
|
|
location ~ ^/api {
|
|
proxy_pass http://192.168.0.153:50011;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-Host $server_name;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
}
|
|
}
|
|
} |