场景需求
同一个域名,用手机访问时加载静态资源服务;用电脑访问时加载后端GO服务。
nginx配置样例
upstream aiopen_pc {
server 0.0.0.0:8080;
}
upstream aiopen_mobile {
server 0.0.0.0:8099;
}
server {
listen 8090;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://aiopen_pc;
#if ($http_user_agent ~* "(Android|webOS|iPhone|iPod|BlackBerry)") {
if ($http_user_agent ~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino") {
set $mobile_request '1';
}
if ($mobile_request = '1') {
proxy_pass http://aiopen_mobile;
}
}
}
#静态资源服务
server {
listen 8099;
server_name aiopen_mobile;
root /data/ai-open-phone/build;
index index.html;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}