Ох.в общем всю логику передал. Чтобы не выносить страницы, где передаются куки, в отдельный локейшн, вместе с Set-Cookie одновременно делаем proxy_ignore_headers "Cache-Control", тогда nginx не кэширует страницу. <br>
Все работает хорошо, но при автоматическом тестировании ловим такое: переменная кука session попадает в ключ. <br>server {<br> listen <a href="http://192.168.0.32:9181">192.168.0.32:9181</a>;<br> server_name <a href="http://domain.com">domain.com</a>;<br>
access_log /var/log/nginx/<a href="http://domain.com/nginx-access.log">domain.com/nginx-access.log</a> combined;<br> error_log /var/log/nginx/<a href="http://domain.com/nginx-error.log">domain.com/nginx-error.log</a> error;<br>
proxy_temp_path /var/cache/nginx/<a href="http://domain.com">domain.com</a>;<br> location / {<br> proxy_pass <a href="http://192.168.0.32:81">http://192.168.0.32:81</a>;<br> proxy_set_header Host <a href="http://domain.com">domain.com</a>;<br>
proxy_set_header X-Real-IP $remote_addr;<br> proxy_next_upstream error timeout invalid_header http_500 http_503;<br> proxy_cache one;<br> proxy_cache_key $host$uri?$args|$cookie_session|$cookie_username|$cookie_username|;<br>
proxy_no_cache $cookie_session $cookie_username $http_x_requested_with;<br> proxy_pass_header Set-Cookie;<br> proxy_ignore_headers "Expires";<br> proxy_cache_valid 200 301 302 304 1h;<br>
}<br>ключ в кэше получается вида: <a href="http://192.168.0.32/blabla?|02e3927ebc95993e6adf59ab7072bf1c|||">192.168.0.32/blabla?|02e3927ebc95993e6adf59ab7072bf1c|||</a><br>Вопрос: как переменная cookie_session может попадать в ключ (очень редко, но проскакивает), если она указана в параметре proxy_no_cache? <br>
<br><br><div class="gmail_quote">9 июня 2010 г. 15:19 пользователь Igor Sysoev <span dir="ltr"><<a href="mailto:igor@sysoev.ru" target="_blank">igor@sysoev.ru</a>></span> написал:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>On Wed, Jun 09, 2010 at 03:13:19PM +0300, Alex Smorodin wrote:<br>
<br>
> Как сделать, чтобы при логине пользователь получил куку "session" от<br>
> апача ? И чтобы потом из кэша она ни к кому не попала. Извините за<br>
> сумбурность мыслей.<br>
<br>
</div>По-моему, ответ очевиден: не кэшировать страницу логина. А как же иначе ?<br>
<font color="#888888"><br>
<br>
--<br>
</font><div><div></div><div>Игорь Сысоев<br>
<a href="http://sysoev.ru" target="_blank">http://sysoev.ru</a><br>
<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>С уважением,<br> Смородин Александр <br> <br> mailto: <a href="mailto:agsmorodin@gmail.com" target="_blank">agsmorodin@gmail.com</a><br>