1.需求场景
我司app会给每个渠道推广商打一个渠道apk包,为了方便渠道商推广,之前给每个渠道商分配一个链接,地址如:https://d.xx.com/appName/C0, 后面C0是渠道商编号。
渠道商多次反馈链接太长,为了解决这个问题,我们注册了一个专用的域名xx.com, 然后每个渠道商使用子域名进行跳转。比如渠道为c0的渠道商的推广链接就为c0.xx.com,我们配置域名子域名进行通配符解析,然后在nginx进行参数拼接
nginx实现配置
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name ~^(.+)?\.xx\.com$;
set $www_root $1;
root /usr/share/nginx/html;
rewrite ^/(.*) https://www.xxold.com/d/?c=$www_root&appName=a permanent;
}
实现的效果就为:
xxx.xx.com就会重定向到 https://www.xxold.com/d/?c=xxx&appName=a