Вопрос из интервью от Tencent: как избежать кэширования мобильных страниц CDN для ПК

опрос внешний фреймворк

Эта статья включена в ежедневный вопрос GitHub:DailyQuestion, в том числе возможность продвижения по службе на большой фабрике, книга для личного общения и несколько вопросов для интервью, изучение по пять минут в день и поступление на большую фабрику на один год.

Если сторона ПК и мобильная сторона представляют собой набор кодов, этой проблемы не возникнет."Эта проблема возникает на стороне ПК и на стороне мобильного устройства, которые представляют собой два набора кодов, но имеют общее доменное имя."

использоватьnginxКонфигурация выглядит следующим образом, согласно UA, чтобы определить, является ли мобильный терминал, и использовать другую логику (судя, подвержен ли мобильный терминал UA проблемам)

location / {
    // 默认 PC 端
    root /usr/local/website/web;

    # 判断 UA,访问移动端
    if ( $http_user_agent ~* "(Android|webOS|iPhone|iPad|BlackBerry)" ){
        root /usr/local/website/mobile;
    }

    index index.html index.htm;
}

Решение обычно заключается в использованииVaryЗаголовки ответов для управления кэшированием CDN различных заголовков запросов.

"можно использовать здесьVary: User-Agent, что означает, что если User-Agent отличается, повторно инициируйте запрос вместо чтения страницы из кеша."

Vary: User-Agent

Конечно,User-Agent

Краткий ответ

использоватьVary: User-Agent, кэшируется согласно UA.

Vary: User-Agent

Но лучше, чтобы такой ситуации не было.При наличии двух наборов кодов на ПК и мобильных терминалах рекомендуется использовать два доменных имени по следующим причинам.

  1. nginxОпределение склонности мобильных терминалов к ошибкам
  2. Кэш недружелюбно

больше интервью

Подписывайтесь на меня

Эта статья включена в ежедневный вопрос GitHub:DailyQuestion, в том числе возможность продвижения по службе на большой фабрике, книга для личного общения и несколько вопросов для интервью, изучение по пять минут в день и поступление на большую фабрику на один год.

Я Шаньюэ, и я работаю над"Ответьте на большой заводской высокочастотный вопрос интервью короткими ответами, которые можно прочитать за пять минут каждый день.". Вы можете отсканировать код, чтобы следовать ему, или ответить на WeChat в официальном аккаунте, чтобы связаться со мной.

每天五分钟,半年大厂中
Пять минут в день, полгода на крупных заводах

В этой статье используетсяmdniceнабор текста