diff --git a/ui/container-files/etc/nginx/conf.d/default.conf b/ui/container-files/etc/nginx/conf.d/default.conf index 65c15c05f..56168de73 100644 --- a/ui/container-files/etc/nginx/conf.d/default.conf +++ b/ui/container-files/etc/nginx/conf.d/default.conf @@ -25,10 +25,6 @@ server { root /usr/share/nginx/html; index index.html index.htm; - # Modify this rule by removing '/ui' when the UI app is moved to the URL root dir '/' and the old Gateway App is decomissioned. - # And also you will need to update the base-href setting in the index.html file to '/'. - try_files /ui/en /ui/en/index.html; - # Disable Caching sendfile off; add_header Last-Modified $date_gmt; @@ -38,13 +34,24 @@ server { etag off; # The load balancer is Temporarily configured to forward all requests for '^/ui(.*)' to this nginx virtual host. - # This context path for this app will eventaully be changed to the root dir '/' and the Gateway will be decomissioned and all rewrites and location block will need to be re-assessed. + # This context path for this app will eventully be changed to the root dir '/' and the Gateway App will be decomissioned and all rewrites and location block will need to be re-assessed. # The following rewrite rule removes '/ui' from the uri so that files can be referenced relative to the document root path. # Requires `base href` in the static html files be set to "./" or "/ui//" {e.g "/ui/en/"} for this to work. - rewrite ^/ui/(.*)$ /$1 last; - location ~ ^/(cs|en|es|fr|it|ja|ko|pt|ru|zh-CN|zh-TW)/(.*) { - try_files $uri $uri/ /$1/index.html?$args; + + # Temporary Rule, when the UI app is served from the root instead of `/ui` then this rewrite rule can be removed. + rewrite ^/ui/(.*)$ /$1 last; + + # 1.) /$ -> /en/index.html + try_files /ui/en/index.html /ui/en/index.html; + + # 2.) /$ -> //index.html + location ~ ^/(cs|en|es|fr|it|ja|ko|pt|ru|zh-CN|zh-TW)$ { + try_files $uri $uri/index.html /$1/index.html?$args; + } + + # 3.) //$ -> //index.html + location ~ ^/(cs|en|es|fr|it|ja|ko|pt|ru|zh-CN|zh-TW)/(.*)$ { + try_files $uri $uri/ /$1/index.html?$args; } - } }