server {
listen 80;
server_name xxxx.xxxx.net;
charset utf-8;
location / {
proxy_pass http://127.0.0.1:8000;
}
#访问/privacy自动跳转到/privacy/zh、/privacy/en、/privacy/ms、/privacy/in
location /privacy {
default_type 'text/plain';
#在content_by_lua_block{}里写lua
content_by_lua_block {
--检查一个字符串是否以多个不同的前缀之一开始的方法
function has_prefix(str, prefixes)
for _, prefix in ipairs(prefixes) do
if string.sub(str, 1, #prefix) == prefix then
return true
end
end
return false
end
--获取Accept-Language
local accept_lang = ngx.req.get_headers()["Accept-Language"] or ""
if has_prefix(accept_lang, {"zh"}) then
--如果以zh开头则跳转到指定的中文页面
ngx.exec("/privacy/zh")
elseif has_prefix(accept_lang, {"en"}) then
ngx.exec("/privacy/en")
elseif has_prefix(accept_lang, {"ms"}) then
ngx.exec("/privacy/ms")
elseif has_prefix(accept_lang, {"in","id"}) then
ngx.exec("/privacy/in")
else
ngx.exec("/privacy/en")
end
}
}
#中文的页面
location /privacy/zh {
alias /home/deploy/Privacy;
index yszc-zh-CN.html;
}
location /privacy/en {
alias /home/deploy/Privacy;
index yszc-en-US.html;
}
location /privacy/ms {
alias /home/deploy/Privacy;
index yszc-ms-MY.html;
}
location /privacy/in {
alias /home/deploy/Privacy;
index yszc-in-ID.html;
}
}
openresty根据Accept-Language跳转到对应语言的页面
最新推荐文章于 2024-07-26 14:50:22 发布