Что означают эти записи в журнале Thin cache?

Недавно я выпустил обновление моего веб-приложения на Rails 3.1. Я использую это приложение на Unbuntu 10.04 VPS с тонким на внутренней стороне, Nginx на передней панели. Чтобы мое приложение работало с новым конвейером ресурсов Rails, я добавил следующую запись в мой файл конфигурации Nginx:

  location ~ ^/(assets|images|javascripts|stylesheets|swfs|system)/ {
        access_log off;
        gzip_static on; # to serve pre-gzipped version

        expires max;
        add_header Cache-Control public;

        # Some browsers still send conditional-GET requests if there's a
        # Last-Modified header or an ETag header even if they haven't
        # reached the expiry date sent in the Expires header.
        add_header Last-Modified "";
        add_header ETag "";
        break;
    }

Это более или менее прямо из руководства, и это работает. Тем не менее, теперь я замечаю в своих журналах Thin такие записи:

cache: [GET /] miss
cache: [GET /designs/victoria/images/gallery-3-zoom.png] miss, store
cache: [GET /blank.html] stale, invalid, store
cache: [GET /blank.html] stale, invalid, store
cache: [GET /robots.txt] stale, invalid, store
cache: [GET /parties/new] miss

Их много. Большинство из них для /blank.html. Любые запросы на актив относятся к нетранслируемым активам. Некоторые URL-адреса прямо из моего файла маршрутов. Мои вопросы:

  • Что это за записи "cache:"? Я никогда не настраивал кеширование в этом приложении.
  • Если мои настройки неверно настроены, как мне исправить?
  • Почему blank.html получает так много запросов (что такое blank.html?)?

Любое понимание приветствуется! Спасибо.

1 ответ

Кажется, что записи "cache:" поступают из Rack::Cache, который включается Rails в 3.1, когда включен конвейер ресурсов. Это хорошо, так как это делает HTTP-кэширование через заголовки http. По умолчанию в Rack::Cache включена опция verbose, поэтому он ведет всю запись трассировки в STDERR, поэтому он отображается в моих ранее не шумных журналах Thin.

Blank.html, по-видимому, является частью исправления IE6, чтобы браузер отображал фоны iframe прозрачно при наведении курсора. Я понятия не имею, почему он запрашивается с такой частотой, но файл находится в Rails по умолчанию и всегда был там.

Все это говорит о том, что мое приложение выглядит здоровым и в хорошей форме.

Другие вопросы по тегам