у нас есть Drupal 8 с правилом кеша Cloudflare. По умолчанию у нас всегда есть валюта GBP, затем мы разработали модуль, который позволяет пользователям изменять свою валюту с помощью раскрывающегося списка нижнего колонтитула и сохраняет ее в сеансе пользователя.
Без правила кеша Cloudflare веб-страница работает правильно. Проблема в том, что если правило активно, первое посещение Интернета кешируется с валютой по умолчанию, затем, если кто-то пытается изменить валюту на евро, веб-страница перезагружается и показывает кешированную страницу с валютой по умолчанию, а не с евро. .
Кэш Cloudflare находится по URL-адресу, и мы всегда сохраняем один и тот же URL-адрес для всех валют.
Запустить скриншоты Clodflare
Конец скриншотов Clodflare
Мы подумали, что решение состоит в том, чтобы добавить/принудительно указать валюту в качестве параметра URL-адреса.
https://www.amazon.com/
https://www.amazon.com/?currency=EUR&language=es_US
https://www.amazon.com/?currency=EUR&language=en_US
https://www.amazon.com/?currency=USD&language=es_US
Можно ли заставить запрос всегда иметь параметр? Есть какой-либо способ сделать это? Нравится EventSubscriber?
Спасибо вам всем.