Apache s'exécute en tant que proxy sécurisé (port 443) entre un site HTTPS et le reste du monde. Ce site est en train de créer un cookie httpOnly sécurisé. Le cookie, vu dans une trace, apparaît dans un paquet de réponse présenté ci-dessous:
... Other headers
Content-Length: 366
Set-Cookie: Cookie=!bZ..mumbojumbo..; Secure; path=/; Httponly; Secure
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
.... Other content
J'ai le http-ssl.conf installé de la manière suivante:
#Set the Our NEW Cookie to the content of secure cookie present.
RewriteCond %{HTTP_COOKIE} Cookie=([^;]+) [NC]
RewriteRule ^(.*)$ /$1 [L,CO=NewCookie:%1:our.proxy.com:1440:/]
Sur la réponse, je ne peux pas voir ce déclencheur de règle [NewCookie n'est pas défini]
Mod_rewrite interdit-il explicitement l'accès au cookie httpOnly?
Sur le réponse, je ne peux pas voir le déclencheur de cette règle [NewCookie n'est pas défini]
mod_rewrite ne fonctionne que sur la demande. Vous ne pouvez donc pas vérifier si la Cookie
est définie sur la réponse, si c'est ce que vous essayez de faire?
Si vos directives mod_rewrite ne semblent rien faire contre la demande envoyée par le client, il semblerait que le cookie n’est pas renvoyé ou qu’il ne parvienne pas à définir le paramètre NewCookie
(par exemple, le client le rejette). à cause de l'inadéquation des domaines?)
Vous pourriez peut-être vérifier si votre directive est en cours de traitement en définissant une variable d'environnement et en vérifiant l'existence dans votre code côté serveur. Par exemple:
[L,CO=NewCookie:%1:our.proxy.com:1440:/,E=TRIED_TO_SET_COOKIE:YES]
RewriteRule ^(.*)$ /$1
Notez que si vous souhaitez simplement définir le cookie, sans aucune réécriture d'URL, utilisez simplement -
(trait d'union) comme substitution (fonctionnalité spéciale). Ceci peut ensuite être simplifié pour:
RewriteRule ^ -
Question: mod_rewrite interdit-il explicitement l'accès au cookie httpOnly?
Non, mod_rewrite verra le cookie s'il est envoyé dans le demande.