Author Archives: admin - Page 2

Массовое изменение физических размеров картинок на сервере

в пакете Image Magic есть утилита mogrify которая многое умеет.

Команда находит файлы JPG размером больше 2х мегабайт и дальше в работу вступает mogrify , которая уменьшает разрешение файла до 1280 (если ширина больше, меньшие не трогает, но компрессией может пройти сверху) по ширине (высота меняется пропорционально) и качество компрессии равно 90.

Nginx сжатие для google pagespeed

примерно вот так в nginx.conf

Кэширование Nginx

оч хорошая статья, боюсь потерять на неё ссылку
http://devacademy.ru/posts/razbiraemsya-v-http-proksi-nginx-balansirovke-nagruzki-buferizatsii-i-keshirovanii/
это перевод вот этой статьи
https://www.digitalocean.com/community/tutorials/understanding-nginx-http-proxying-load-balancing-buffering-and-caching

Поиск вирусов на сайте

Стали часто обращаться в помощи почистить сайты\сервера от вирусов.

пишу заметку для себя, какие комманды в поиске подозрительных файлов применяю
в поисках подозрительных функций

но странно эта команда не все находит. вот есть шелл в руках, на который она не реагирует в нём дофига

в связи с этим
вот ещё у коллег в бложике спёр

дальше ручками просматриваем файлы из virus.txt на предмет аномалий.

часто надо найти файлы что правились совсем недавно

будет создан файл и отсортирован в обратном порядке

Кэширование nginx: Мониторинг

Оригинал статьи тут, себе копирую, чтоб не потерять.

Объявляем новый log_format в nginx.conf:

log_format rt_cache '$remote_addr - $upstream_cache_status [$time_local]  '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent"';

в server разделе вашего vhost:

И замените

access_log   /var/log/nginx/example.com.access.log;

На вот такое:

access_log   /var/log/nginx/example.com.access.log rt_cache;

Или можно поступить как-то так.

access_log   /var/log/nginx/example.com.access.log;
access_log   /var/log/nginx/example.com.cache.log rt_cache;

обратите внимание, что в разных логах различаются имена файлов.

Анализируем логи:

HIT vs MISS vs etc

Можно посмотреть статистику из access.log:

awk '{print $3}' access.log  | sort | uniq -c | sort -r
Sample output:

    800 HIT
    779 -
    392 BYPASS
     19 EXPIRED
     14 MISS

Важно: тире (“-“) означает прочие коды return 403, return 444, и возможно всякие файлы, что не попали к нам в локейшин в котором действует кэш.

Посмотреть список уролов с MISS

awk '($3 ~ /MISS/)'  access.log | awk '{print $7}' | sort | uniq -c | sort -r

BYPASS Requests URLs

awk '($3 ~ /BYPASS/)'  access.log | awk '{print $7}' | sort | uniq -c | sort -r

MISS v/s BYPASS

MISS – Это промахнулись мимо кэша, возможно это первое обращение, после которого кэш создаётся.

BYPASS – это пропуск к бэкэнду минуя кэн nginx например для залогиненных пользователей.