Как удалить или заблокировать загруженные файлы в WordPress через .htaccess

|

Диагностика проблемы с загруженными файлами WordPress

Иногда возникает необходимость ограничить доступ к определённым типам загруженных файлов в папке wp-content/uploads или полностью заблокировать доступ к отдельным файлам. Проблемы могут проявляться как нежелательная индексация медиафайлов, утечка конфиденциальных данных или атаки через загруженный контент (например, скрипты в SVG, PHP-файлах).

Чтобы диагностировать проблему, проверьте текущие правила в .htaccess в корне сайта и в папке uploads. Также проверьте, доступны ли нежелательные файлы напрямую по URL, например https://example.com/wp-content/uploads/secret.pdf.

Пошаговое решение: блокировка и удаление файлов через .htaccess

1. Создание резервной копии .htaccess

Перед любыми изменениями создайте резервную копию текущего файла .htaccess:

cp /path/to/wordpress/.htaccess /path/to/wordpress/.htaccess.backup

2. Блокировка доступа к файлам по расширениям

Добавьте следующий код в .htaccess в корне сайта для запрета доступа к опасным или нежелательным типам файлов в папке uploads:

# Блокировка доступа к определённым типам файлов в uploads
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-content/uploads/.*\.(php|phtml|exe|sh|js|svg)$ [NC]
RewriteRule .* - [F,L]
</IfModule>

Пояснение:

3. Удаление конкретных файлов через командную строку

Для удаления определённых файлов (например, старых резервных копий или подозрительных скриптов) используйте SSH и команду:

find /path/to/wordpress/wp-content/uploads -type f -name 'backup_*.zip' -delete

Проверка результата после внедрения

1. Попробуйте открыть в браузере URL с запрещёнными файлами, например:

Если настроено верно, сервер должен возвращать 403 Forbidden.

2. Проверьте логи сервера на наличие ошибок или попыток доступа к заблокированным файлам.

Частые ошибки и как их исправить

Практические советы по безопасности и производительности

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

МетодПреимуществаНедостатки
.htaccess RewriteRuleБыстрая блокировка на уровне сервера, не нагружает PHPРаботает только на Apache, требует mod_rewrite
nginx конфигурацияВысокая производительность, гибкостьТребует доступа к конфигу сервера, не подходит для shared хостинга
Плагины безопасностиУдобство настройки, дополнительные функцииПовышенная нагрузка на сайт, возможны конфликты
Как добавить уникальные карты в WordPress с применением Yelly
08.03.2026
Как отключить автопроизвольный звонок в WordPress без плагинов
25.12.2025
Как создать автоматические отзывы в WordPress с помощью Expert Review
25.03.2026
Как создать автоматическое меню в WordPress с применением AJAX
03.04.2026
Как изменить URL адрес AJAX в WordPress: практические решения и примеры
02.01.2026
×
Обнови свой WordPress!

Держи скидку 15% на премиум тему Reboot

Купить со скидкой ⋙