В общем, попробовал я сделать кэширование для Drupal по этой статьей. Практически получилось. Однако, как пишут здесь: <a href="http://groups.drupal.org/node/26485">http://groups.drupal.org/node/26485</a>, могут возникнуть (и возникают) проблемы с куками.<div>
Там предложили проставлять для анонимов куку NO_CACHE (<a href="http://groups.drupal.org/node/26485#comment-91428">http://groups.drupal.org/node/26485#comment-91428</a>), но нужно будет патчить ядро.</div><div><br></div><div>
В данный момент у меня такой конфиг:</div><div><br></div><div><div>location /user/ {</div><div>proxy_pass <a href="http://127.0.0.1:8082/user/">http://127.0.0.1:8082/user/</a>;</div><div>proxy_redirect off;</div><div>proxy_set_header    Host    $host;</div>
<div>proxy_set_header    X-Real-IP       $remote_addr;</div><div>proxy_set_header    X-Forwarded-For $remote_addr;</div><div>proxy_pass_header Cookie;</div><div>}</div><div><br></div><div>location /logout/ {</div><div>proxy_pass <a href="http://127.0.0.1:8082">http://127.0.0.1:8082</a>;</div>
<div>proxy_redirect off;</div><div>proxy_set_header    Host    $host;</div><div>proxy_set_header    X-Real-IP       $remote_addr;</div><div>proxy_set_header    X-Forwarded-For $remote_addr;</div><div>proxy_pass_header Cookie;</div>
<div>}</div><div><br></div><div>.</div><div>location / {</div><div>    proxy_pass <a href="http://127.0.0.1:8082">http://127.0.0.1:8082</a>;</div><div>    proxy_redirect off;</div><div>    proxy_set_header    Host    $host;</div>
<div>    proxy_set_header    X-Real-IP       $remote_addr;</div><div>    proxy_set_header    X-Forwarded-For $remote_addr;</div><div>    proxy_pass_header Cookie;</div><div>....</div><div>    proxy_cache one;</div><div>    proxy_cache_key &quot;$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri|$cookie_session&quot;;</div>
<div>    proxy_hide_header &quot;Set-Cookie&quot;;</div><div>    proxy_cache_valid 200 5m;</div><div>    proxy_cache_valid 301 302 304 50m;</div><div>    proxy_cache_valid 502 1m;</div><div>    proxy_cache_min_uses 1;</div>
<div>    proxy_cache_use_stale updating error timeout invalid_header http_500 http_502 http_503 http_504;</div><div>    proxy_ignore_headers &quot;X-Accel-Expires&quot; &quot;Expires&quot; &quot;Cache-Control&quot;;</div>
<div>}</div><div><br></div><div>location /user/ отвечает за отключение кэша для страницы <a href="http://site.ru/user">http://site.ru/user</a>, т.е., для страницы входа в систему.</div><div>location /logout/ сбрасывает кэш во время выхода из системы.</div>
<div><br></div><div>Как я уже писал выше, проблем почти нет, все кэшируется нормально. Но иногда для зарегистрированных юзеров показывается страница анонимов и наоборот. Побороть это без правки кода Друпала пока не получилось.</div>
<br><div class="gmail_quote">20 октября 2009 г. 13:15 пользователь Vladislav Vladimirovich <span dir="ltr">&lt;<a href="mailto:tvword@gmail.com" target="_blank">tvword@gmail.com</a>&gt;</span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br><br><div class="gmail_quote">16 октября 2009 г. 5:07 пользователь Sky Cat <span dir="ltr">&lt;<a href="mailto:skysecret@gmail.com" target="_blank">skysecret@gmail.com</a>&gt;</span> написал:<div><br><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex">


Большое спасибо. Очень интересная статья. Благодаря ей я сегодня ночью настроил кэширование в Drupal. Если кому-то интересно, отпишусь позже о результатах тестирования.</blockquote></div><div><br>Drupal и nginx-кэширование - это очень интересно.  Напишите, пожалуйста, как можно подробнее про свой опыт. Спасибо.<br>


</div></div><br>
</blockquote></div><br>
</div>