Это, я думаю, объясняет, как мы могли бы покончить с использованием лака с magento
Если вы используете модуль aoe_static и мой пользовательский vcl для лака 3, он очищает куки в ответе на кешированной странице. Это должно сделать это в vcl fetch. Затем куки могут быть установлены из меньшего отклика Ajax, который загружает динамический контент. Это поддерживает ваши сеансы, корзину и т. Д. Этот ответ ajax может быть «передан» в vcl recovery.
У меня не возникало проблем с этим, но я не пробовал это на рабочей площадке.
Динамические блоки должны быть заменены местозаполнителями через макет XML. Если вам понравились эти замены, вы можете использовать краевую часть лака или пользовательскую реализацию ajax.
При загрузке динамического контента из aoe_static (или любого другого типа ajax-методов, который вы предпочитаете) хорошо помнить, что вы все еще можете использовать систему макетов magentos, например, создайте дескриптор для вашего вызова ajax с вложенными блоками, которые будут отображаться.
Если вы используете модуль aoe_static, вы заметите, что вызывается loadLayout, но помните, какие дескрипторы передаются этому loadLayout. это не то же самое, что запрос макета страницы, на которой вы находитесь, но он получает дескриптор по умолчанию для вас.
Другая проблема - это уровень запасов. Если у продукта больше нет достаточного запаса для добавления в корзину, он все равно будет отображаться в списках продуктов и в качестве параметров для конфигурируемых и сгруппированных продуктов.
Возможно, вы могли бы использовать наблюдателя - cataloginventory_stock_item_save_after - для проверки уровня запасов (я не проверял это). Затем кэш может быть очищен на основе URL-адресов продуктов. Достаточно легко получить URL-адреса категорий, в которых будет отображаться продукт, и одновременно удалить их.
В модуле phoenix есть методы, выполняющие такие виды очистки, если вы хотите увидеть простую реализацию, просто выполняемую наблюдателями.
Но как работать с многослойными навигационными URL-адресами более сложно. вам нужно будет сохранить параметры строки запроса, которые приложение обслуживало, используя URL-адрес списка базовой категории в качестве ключа, а затем прочитать и удалить эти URL-адреса в обозревателе. Такое сохранение параметров строки запроса было бы достаточно простым, используя ответ перед отправкой, проверяя объект запроса с помощью регулярного выражения и регистрируя строки запроса, разделенные запятой.
Я ошибаюсь, полагая, что ни один из текущих модулей не имеет дело с уровнями запасов для многоуровневой навигации?
Я думаю, что хороший готовый модуль для лака необходим в сообществе открытого исходного кода, так как все остальные отсутствуют. лично я планирую использовать только платные полные страницы кеша с серверами с балансировкой нагрузки и, возможно, лаком, чтобы ловить изображения и запросы CSS. Если кто-то не захочет объединить усилия для создания правильной реализации лака, или я буду рад помочь с проблемами для ваших сайтов, если работа может быть добавлена к реализации с открытым исходным кодом, которая лучше решает все эти проблемы.
закажите этот вопрос для получения более подробной информации о проблемах, с которыми вы столкнетесь в этом вопросе - magento с открытым исходным кодом кеш полной страницы