Sto usando apache come bilanciamento del carico e proxy inverso. Per la stickiness della sessione sto creando un cookie con il percorso del nodo.apache Come utilizzare "Set intestazione Set-Cookie scade = <date>" dinamicamente
Header set Set-Cookie "h=.%{BALANCER_WORKER_ROUTE}e; path=/; domain=.domain.com" env=BALANCER_ROUTE_CHANGED
Come faccio a impostare il valore expires
nel cookie per essere X minuti da quando la richiesta arriva?
La documentazione per mod_headers non copre nemmeno Set-Cookie
in dettaglio in modo non v'è alcuna informazioni là su una sintassi dinamica da utilizzare per expires
.
Ho provato a impostare il max-age
ma sfortunatamente max-age doesn't work with IE 11 e molti dei nostri clienti lo usano.
I documenti per mod_rewrite cookie si riferiscono a come impostare una durata nel cookie in modo che possa farlo funzionare con questo brutto mod_rewrite ma ho dovuto fare una regola per percorso poiché non funzionava nella mia sezione <Proxy balancer://my_cluster>
:
RewriteCond %{HTTP_COOKIE} h=.1 [NC]
RewriteRule . - [CO=h:.1:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.2 [NC]
RewriteRule . - [CO=h:.2:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.3 [NC]
RewriteRule . - [CO=h:.3:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.4 [NC]
RewriteRule . - [CO=h:.4:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.5 [NC]
RewriteRule . - [CO=h:.5:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.6 [NC]
RewriteRule . - [CO=h:.6:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.7 [NC]
RewriteRule . - [CO=h:.7:.domain.com:30:/]
RewriteCond %{HTTP_COOKIE} h=.8 [NC]
RewriteRule . - [CO=h:.8:.domain.com:30:/]
Qualche idea su come realizzare con Header set Set-Cookie
? Grazie!
+1 Grazie per la regola. Non ho scavato di più nel rendere quella parte generica perché voglio essere in grado di realizzarla con 'Header set Set-Cookie', altrimenti sto impostando un cookie senza un timeout a destra dopo averlo riscritto. Questo è quello che sto usando per ora però. – DavidG
Non sono a conoscenza di un altro modo di farlo, tranne con 'Header' e questo codice. C'è una ragione particolare per cui vuoi solo ottenerla con 'Header'? Personalmente, l'avrei fatto come ho risposto. Forse potresti descrivere qual è il contesto e perché devi farlo, allora potremmo vedere se esiste un'opzione migliore –
Solo perché sto impostando il cookie e quindi riscrivendolo. Sembra piuttosto dispendioso. – DavidG