从这个例子中,它解释了编写 nginx 配置以在 DE 和 EN 之间切换语言的方法。使用 Modx 作为 CMS。但是,我有 3 种语言,即 EN/DA/TH。请指导我编写 nginx 配置以在 3 种语言之间切换的正确方法。(请注意,EN 是默认的)以下是只允许 2 种语言切换的 nginx 配置。
set $lang de;
# choose the language that appears first in the accept_language header
if ($http_accept_language ~* "(de|en)") {
set $lang $1;
}
location ~ ^/$ {
rewrite ^ $lang/ redirect;
}
location ~ ^/(de|en) {
# redirect favicon.ico and assets/* requests to site root
rewrite ^/(de|en)/(favicon.ico|assets.*)$ /$2 redirect;
# main Babel rewrite
rewrite ^/(de|en)/(.*)$ /?cultureKey=$1&q=$2 break;
# MODX rewrite
try_files $uri $uri/ @modx-rewrite;
}
location / {
try_files $uri $uri/ @modx-rewrite;
}