针对旧版浏览器重写 Nginx

针对旧版浏览器重写 Nginx

我有以下配置文件,适用于除 PHP 页面之外的所有内容。

我尝试将所有内容作为 ancient_browser 添加到 URL 中。本质上更改了这些客户端的根目录,尽管您无法在 if 中设置它。

如果我在 PHP 位置中添加重写,它也不起作用。有什么想法吗?

location / {
    if ($ancient_browser) {
        rewrite  ^(.*)$ /IE/$1 break;
    }
    try_files $uri $uri/ /index.php;
}


location ~ \.php$ {
            include /etc/nginx/fastcgi_params;
            fastcgi_index index.php;
            if (-f $request_filename) {
                fastcgi_pass 127.0.0.1:9000;
            }
}

答案1

对我有用(nginx 1.2.3):

    if ($ancient_browser) {
        set $ab "/IE";
    }
    location / {
        try_files $ab$uri $ab$uri/ $uri $uri/ /index.php;
    }

相关内容