Как я могу указать Varnish с файлом конфигурации VCL не кэшировать URL-адреса, оканчивающиеся на
.html
. Это для веб-сайта Magento, и я не хочу кэшировать страницы продуктов, которые заканчиваются на .html. Я подумал, что?.html
или*.html
могут быть подстановочными знаками, которые мне понадобятся.Также я могу указать Varnish обрабатывать любой запрос URL-адреса, заканчивающегося строкой запроса
?___from_store=0&___store=ie
, так же, как если бы строки запроса не было. Таким образом, Varnish будет обрабатыватьexample.com/?___from_store=0&___store=ie
так же, какexample.com
.
скажите лаку не кэшировать запросы, оканчивающиеся на .html
Ответы (1)
Подстановочный знак, который мне нужен для первой части моих вопросов, кажется, .*\.html$
В моем VCL у меня есть
sub vcl_recv {
if (req.url ~ "^(/media/|/skin/|/js/|/)(?:(?:index|litespeed)\.php/)?(?:admin|api|.*.html$|cron\.php|checkout|checkout/cart|customer|advancednewsletter|onestepcheckout|onepage|hoi_turpentine|exporter|contacts|iphone|join|sitemap.xml)" ||
req.url ~ "\?.*__from_store=") {
return (pipe);
}
}
person
Holly
schedule
28.09.2015
Я бы использовал .*\.html$, иначе вторая точка будет соответствовать любому символу. Также вы уверены, что хотите вернуть трубу, а не пройти? См.: varnish-software.com/book/ 4.0/главы/
- person Ronald; 28.09.2015
@ Рональд, спасибо. Pipe используется, поскольку я использую расширение Magento_Turpentine, которое генерирует VCL, я просто добавил
.*\.html$
в свой раздел конфигурации в административной панели Magento, в чем разница между Pipe и Pass?
- person Holly; 29.09.2015