Запрет загрузки файлов png формате
-
Здравствуйте! Подскажите пожалуйста как запретить загрузку картинок в png формате в директорию uploads/2025/02/, а лучше запрет на всю папку uploads… Картинки раскидываются по месяцу и году.
О проблеме… Пару дней назад стала появляться проблема с заполнением диска на сервере. Проблема заключается в одном из сайтов, в папку uploads/2025/02/ загружаются картинки (или генерируются) с набором букв типа m2txpt9x2jmh6r9-1738814036.8162.png 93nvpocr12xtqgsn45uwb8tclk-1738814046.8552.png и т.д. Генерируются каждую секунду, за несколько часов диск (80гб) переполнен. Меняю атрибуты к папке на запрет и проблема исчезает, но тогда сам не могу загружать фото, а если убираю галочку с «Помещать загруженные мной файлы в папки по месяцу и году», то спам картинок идет напрямую в папку uploads.
Предполагаемый плагин проблемы был удален пару дней назад, но картинки продолжают загружаться. Проверил файлы наглядно, через различные антивирусы и вроде бы все нормально. Написал хостеру, пока не ответил… Ковыряюсь дальше, попутно задал вопрос тут…
Какой код нужно добавить или прописать в .htaccess или добавить этот файл в саму папку и что туда прописать.
-
roman24reg, привет. Скорее всего нужно перезапустить/завершить процесс PHP, который остался в памяти. Редактирование .htaccess тут не поможет особо, если моя догадка верна.
Какой плагин так услужил?
𝗥𝟯𝗡𝟬, привет! Как я понял — Forminator, т.к. изначально в папке uploads была папка с названием плагина, а в ней temp в которой появлялись картинки… Я не особо шарю по этим процессам, у меня ipsmanager, если есть возможность, в двух славах подскажи что искать и завершить?
-
Ответ изменён 2 месяца, 1 неделя назад пользователем
roman24reg.
.htaccess тут не поможет особо
Вообще не поможет, ибо гвоздь не от той стенки.
Нужно искать и устранять вредителя.Нужно искать и устранять вредителя.
В файлах сайта все чисто, в data/mod-tmp/ на сервере найдены два файла phpzxGYe5 phpLUKeyZ (возможно кто то уже встречал такое), если их перевести в png то получаются картинки, которые генерятся в папке о котором написал выше
roman24reg, если речь идёт о виртуальном хостинге с панелью управления, то доступ там, очевидно, ограниченный. Можно попробовать включить/выключить PHP (Настройка > Возможности), нажимая на иконку лампочки, но это костыль, и лучше так не делать.
Вредные советы с обходными путями давать не стану.
𝗥𝟯𝗡𝟬, сервер на таймвебе (ipsmanager), поддержка не хочет помогать в решении отправляя на свой маркетплейс для поиска исполнителя в решении вопроса. Я не скупой и готов был бы заплатить, но для меня такое время, что нет лишней копейки, хотя цена вопроса 4-5к рублей вроде как, но они пока для меня не подъемные… Буду копошиться методом тыка, попробую перезалить сайт под другим пользователем (маловероятно, что это правильное решение), с моими познаниями в серверах вижу только такой путь))
roman24reg, тогда сделайте полную резервную копию (файлы + дамп БД) сайта перед любыми действиями.
Дальше, если придерживаться мысли, что картинки генерирует процесс PHP, можно попробовать сменить версию PHP в панели управления. Внимательо осмотреть доступные настройки, это маловероятно, что будет доступна консоль/доступ по SSH, но вдруг.
Если это не поможет, то попробуйте средствами PHP сделать вывод команд
ps aux | grep -i php
(черезshell_exec
, если он не запрещён), думаю, это прояснит ситуацию.𝗥𝟯𝗡𝟬, Спасибо за подробную помощь! Смена версии ни к чему не привела, дальше буду гуглить про
попробуйте средствами PHP сделать вывод команд
ps aux | grep -i php
(черезshell_exec
, если он не запрещён), думаю, это прояснит ситуацию.т.к. нубяра в этом деле)
roman24reg, если проблема такая назойливая, тогда имеет смысл отключить все плагины и поменять тему оформления на одну из стандартных (twenty*) на время диагностики. После отключения плагинов и смены темы смотрите, генерируются ли картинки. Перестали генерироваться — по очереди включаем плагины, один за другим, каждый раз отслеживая наличие проблемы с генерацией картинок. Механика, думаю, понятна. Если на голом движке проблема с картинками будет существовать, то я бы смотрел уже в сторону работы PHP и задач CRON. Ещё взгляните на лог доступа, не дёргает ли кто-то запросом какую-то забагованную ручку сайта, что приводит к такому итогу.
𝗥𝟯𝗡𝟬, по плагинам и темам тоже думал, буду потихоньку заниматься, пока копаюсь в файлах… плюс переустановить Вордпресс, либо отдельно файлы движка… изучаю, читаю… Помню (раза 3-4 за 15 лет) были траблы по WP, ито пара раз массовый взлом сайтов из-за плагинов, а так, если левую тему поставишь, айболита запустишь и найдешь проблему))) А тут, все файлы чистые, уже глаз замылился)) Спасибо большое за подробные ответы, в любом случае по результату напишу 😉
Нашел проблему в плагине wpDiscuz — при его отключении генерация прекращается!!!
Написал на форуме в ветке плагина, буду ждать, что ответят, но факт на лицо, деактивирую — нет генерации картинок, активирую — за пару секунд десятки картинок.
𝗥𝟯𝗡𝟬, запустил вашу команду через shell клиент и вот что выдало. Можете подсказать, есть тут что то необычное?
root 598 0.0 0.2 220448 22748 ? Ss Feb06 0:0
7 php-fpm: master process (/opt/php74/etc/php-fpm.conf)
root 599 0.0 0.3 228588 26152 ? Ss Feb06 0:0
9 php-fpm: master process (/etc/php/8.1/fpm/php-fpm.conf)
www-data 703 0.0 0.4 232172 36444 ? S Feb06 0:0
0 php-fpm: pool www-data
www-data 704 0.0 0.1 229108 10572 ? S Feb06 0:0
0 php-fpm: pool www
www-data 705 0.0 0.1 229108 10572 ? S Feb06 0:0
0 php-fpm: pool www
root 816 0.0 0.3 225000 28544 ? Ss Feb06 0:1
2 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
root 394999 0.0 0.3 231796 29660 ? Ss Feb06 0:1
3 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2106995 0.0 0.1 232168 15568 ? S 09:01 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2145319 0.0 0.1 232168 15568 ? S 10:34 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2155322 0.0 0.1 232168 15568 ? S 10:53 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2156879 0.0 0.1 232168 15568 ? S 10:56 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2158896 0.0 0.1 232168 15568 ? S 11:00 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2166287 0.0 0.1 232168 15568 ? S 11:13 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2171179 0.0 0.1 232168 15676 ? S 11:22 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2179179 0.0 0.1 232168 15696 ? S 11:38 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2191594 0.0 0.1 232168 15700 ? S 12:00 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2193175 0.0 0.1 232168 15700 ? S 12:03 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-data 2197801 0.0 0.1 225648 14636 ? S 12:12 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2199993 0.0 0.1 225648 14636 ? S 12:17 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2200330 0.0 0.1 225648 14640 ? S 12:17 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2202371 0.0 0.1 225648 14636 ? S 12:22 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2203227 0.0 0.1 225648 14636 ? S 12:24 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2203692 0.0 0.1 225648 14636 ? S 12:25 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2203704 0.0 0.1 225648 14636 ? S 12:25 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2203742 0.0 0.1 225648 14636 ? S 12:25 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2203764 0.0 0.1 225648 14636 ? S 12:25 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204000 0.0 0.1 225648 14636 ? S 12:26 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204031 0.0 0.1 225648 14636 ? S 12:26 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204081 0.0 0.1 225648 14636 ? S 12:26 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204350 0.0 0.1 225648 14552 ? S 12:26 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204366 0.0 0.1 225648 14552 ? S 12:26 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204655 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204791 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204801 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204802 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204810 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204811 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-data 2204813 0.0 0.1 225648 14552 ? S 12:27 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205080 21.7 1.6 271412 137468 ? R 12:28 0:0
1 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205090 22.8 1.6 271412 137656 ? R 12:28 0:0
1 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205091 19.5 1.6 271412 137468 ? R 12:28 0:0
1 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205093 17.6 1.6 271412 137468 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205094 21.8 1.6 271412 137468 ? R 12:28 0:0
1 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205095 17.2 1.6 271412 137468 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205096 20.7 1.3 263220 110328 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205102 8.5 1.4 252480 120308 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205103 17.2 0.9 257076 76612 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205105 21.0 0.7 257700 57576 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205107 15.6 0.7 257536 57188 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
gostevoj 2205109 8.5 1.1 320840 92220 ? S 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
www-root 2205110 10.0 0.6 249348 49004 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
www-root 2205111 16.0 0.5 246728 46364 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php74 -k start
gostevoj 2205117 4.0 0.6 242940 55876 ? R 12:28 0:0
0 /usr/sbin/apache2 -d /etc/apache2-isp-php81 -k start
root 2205119 0.0 0.0 6612 2268 pts/0 S+ 12:28 0:0
0 grep --color=auto -i php -
Ответ изменён 2 месяца, 1 неделя назад пользователем
- Для ответа на тему необходимо авторизоваться.