Назад | Перейти на главную страницу

Должен ли я оставить access_log включенным в Nginx?

Просто подумайте с точки зрения производительности, что, возможно, access_log off; для моих веб-сайтов улучшит скорость загрузки (хотя она может быть очень минимальной), но да, в любом случае, как access_log действительно пригодится, потому что я дважды в жизни проверял журналы доступа?

Access_log может быть полезен для статистики (обычно он необходим для таких пакетов, как awstats или webalizer). В зависимости от ваших целей вы можете отключить access_log для небольших файлов (например, .ico) или на основе имени файла.

Например, я не веду статистику для статических файлов и использую nginx в качестве прокси для apache. Поэтому я отключаю access_log для выбранных статических типов файлов, а также для динамических (php) файлов (поскольку apache их регистрирует).

Ниже приведен образец моего файла конфигурации:

    location ~  \.(jpg|jpeg|png|gif|swf|ico|js|css|txt|htm|html|xml|bmp|pdf|doc|docx|ppt|pptx|zip)$     {
        expires     30d;
        access_log off;
        break;
    }

    location ~ \.php$ {
        access_log off;
        proxy_pass   http://127.0.0.1:8080;
    }

Что касается производительности, то прирост действительно должен быть минимальным. Nginx - очень эффективный веб-сервер, и если вы действительно не обслуживаете большой объем страниц / файлов, вы вряд ли заметите разницу. Возможным преимуществом является то, что ваши журналы не будут так много заполняться записями, которые вас не интересуют. В идеале вы должны объединить более целевой журнал (только те записи, которые вам нужны) с поворотом журнала, чтобы вы могли сжать и избавьтесь от старых записей журнала.