Это код, который я добавил в файл vcl, чтобы он кэшировал контент для пользователей настольных компьютеров и мобильных устройств отдельно:
if (req.http.User-Agent ~ "(iPhone|Android|240x320|400X240|AvantGo|BlackBerry|Blazer|Cellphone|Danger|DoCoMo|Elaine/3.0|EudoraWeb|Googlebot-Mobile|hiptop|IEMobile|KYOCERA/WX310K|LG/U990|MIDP-2.|MMEF20|MOT-V|NetFront|Newt|Nintendo Wii|Nitro|Nokia|Opera Mini|Palm|PlayStation Portable|portalmmm|Proxinet|ProxiNet|SHARP-TQ-GX10|SHG-i900|Small|SonyEricsson|Symbian OS|SymbianOS|TS21i-10|UP.Browser|UP.Link|webOS|Windows CE|WinWAP|YahooSeeker/M1A1-R2D2|PalmSource)") {
set req.http.Host = "m.wwwery.com";
}
Но когда я вижу здесь (http://www.ephur.net/2010/01/04/improving-wordpress-performance-and-supporting-wptouch-with-varnish/), это как "Опера \ Мини". почему так?
Стоит ли добавлять "\" всякий раз, когда есть пробел? или мне не нужно этого делать? Пожалуйста, порекомендуйте.
Я не вижу причин цитировать пробелы в конфиге varnish. Это уже двойные кавычки, а пробел не является специальным символом в регулярном выражении. Далее, примеры в https://www.varnish-cache.org/trac/wiki/VCLExampleNormalizeUserAgent не цитируйте пробелы. Я считаю, что приведенный вами пример неверен.