Nginx stops proxy_cache under siege or with curl request when page's cache is out of date

view story

http://serverfault.com – I try to serve an index page with nginx, using it's proxy_cache functionality. Everything works fine regards ordinary browsing with broswers. But when I try to get page's content with curl or when I use siege on the index page, nginx begins to work not as I have expected. It passes the request further to apache when page's cache is out of date. I can't understand, why nginx doesn't create a new cache of the index page when it was requested with curl or siege? Here is a part of nginx.conf: proxy_cache_path /var/cache/nginx levels=2 keys_zone=pagecache:100m inactive=1m max_size=500m; (HowTos)