我正在使用 Nginx 反向代理将我的流量从移动设备重定向到一个 docker 容器,并将桌面重定向到另一个 docker 容器。附件是我正在使用的 nginx 配置文件。因此,something.xyz从移动设备打开的用户显示为单独的前端,从桌面打开的用户显示为单独的前端。
现在出于显而易见的原因,我想在 S3-Cloudfront 中同时托管移动和桌面前端。我不知道如何分离移动流量和桌面流量并将它们重定向到单独的 s3-cloudfront。
events {
worker_connections 4096; ## Default: 1024
}
http {
server {
listen 80;
server_name something.xyz;
if ($http_user_agent ~* '(iPhone|iPod|Opera Mini|Android.*Mobile|NetFront|PSP|BlackBerry|Windows Phone)') {
set $ua_type "@mobile";
}
location /api {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:8080";
}
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
if ($ua_type = "@mobile") {
proxy_pass "http://127.0.0.1:82";
}
if ($ua_type != "@mobile") {
proxy_pass "http://127.0.0.1:81";
}
}
}
}