4

サーバーブロックで次のスニペットを使用して、古い IE ユーザーに古いブラウザーページを提供できます。

location / {
        if ($http_user_agent ~ "MSIE 8.0") {
                rewrite ^ /ie.html break;
        }
}

これは正常に機能し、nginx はie.htmlIE 8 ユーザーにサービスを提供します。ただし、2 つの質問があります。

/upgradebrowser1 つは、HTML ページを表示するだけでなく、古い IE ユーザーを にリダイレクトしたいということです。ヘッダーなどを送信する方法はありLocation:ますか?

次に、IE の古いユーザーを簡単に見つける方法はありますか? 現時点では、これは IE 8.0 を実行しているだけですが、使用する方法はあります$http_user_agent < "MSIE 8.0"か?

4

1 に答える 1

6

すべてのケースに一致させるには、regexp を使用する必要があります。例えば。

location / {
    if ($http_user_agent ~* '(MSIE 8.0|MSIE 7.0)') {
        return 301 https://$host$request_uri; 
    }
}
于 2014-04-14T19:39:39.113 に答える