diff --git a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationBrowser.php b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationBrowser.php index 462646a..68e1b10 100644 --- a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationBrowser.php +++ b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationBrowser.php @@ -40,6 +40,10 @@ public function getLangcode(Request $request = NULL) { $langcodes = array_keys($this->languageManager->getLanguages()); $mappings = $this->config->get('language.mappings')->get(); $langcode = UserAgent::getBestMatchingLangcode($http_accept_language, $langcodes, $mappings); + // Internal page cache with multiple languages and browser negotiation + // could lead to wrong cached sites. Therefore disabling the internal + // page cache. + \Drupal::service('page_cache_kill_switch')->trigger(); } return $langcode;