J'essaie de configurer le traitement des requêtes directement à partir de nginx en utilisant le cache de redis. Le cache est déjà ajouté à redis, mais le problème est de configurer nginx pour qu'il récupère le cache de redis.
L'URL est comme http://example.com/action.js?param1=10¶m2=text
La clé Redis dépend du paramètre 1
dans l'exemple suivant il utilise le chemin complet comme clé pour redis
je veux donc capturer le paramètre 1 pour obtenir la clé qui est comme "cahced_page_"+param1
server {
listen 80;
server_name your.website.com;
root /home/appuser/app/current/public;
error_log /dev/null crit; #real man don't log
location / {
set $redis_db "1";
set $redis_key $uri;
default_type text/html;
redis_pass redis;
error_page 404 405 502 504 = @fallback;
}
location @fallback {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://yourunicornupstream;
break;
}
}
}
1 votes
Avez-vous vérifié wiki.nginx.org/HttpCoreModule#Variables ? -> En particulier la partie concernant $arg_PARAMETER ?