J'utilise actuellement nginx comme proxy inverse avec la mise en cache activée.
Toutefois, le site principal présente deux mises en page différentes, en fonction de l'agent utilisateur (mobile ou non).
J'ai essayé quelque chose de similaire :
# mobile users
if ($http_user_agent ~* '(iPhone|iPod|mobile|Android|2.0\ MMP|240x320|AvantGo|BlackBerry|Blazer|Cellphone|Danger|DoCoMo|Elaine/3.0|EudoraWeb|hiptop|IEMobile)') {
set $iphone_request '1';
}
if ($iphone_request = '1') {
proxy_cache mobile;
}
if ($iphone_request = '') {
proxy_cache site;
}
proxy_cache_key "$scheme://$host$request_uri";
proxy_pass http://real-site.tld;
Cependant, nginx donne une erreur, indiquant que proxy_cache ne peut pas être utilisé dans une structure if.
Y a-t-il un autre moyen de servir à partir d'un cache différent selon le navigateur ?
Merci, Tuinslak