Как защитить файлы WordPress и папку для загрузки

Как защитить файлы WordPress и папку для загрузки

Контент и файлы являются основными активами любого сайта WordPress. Хотя содержимое веб-сайта может быть защищено паролем или плагинами членства, простого способа защитить медиафайлы на вашем сайте не существует.

На самом деле, плагины для членства или загрузки могут защитить и ограничить вашу страницу и публиковать URL-адреса для зарегистрированных пользователей или платных участников. Однако медиафайлы, встроенные в контент, по-прежнему доступны для публики. Фактически, любой, у кого есть прямые ссылки на эти файлы, может получить к ним доступ и загрузить их. Они даже могут быть связаны с другими веб-сайтами.

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

В этой статье мы предоставим вам несколько решений, как защитить ваши медиафайлы от посторонних глаз.

К концу этой статьи вы будете знать:

  • Как ограничить доступ к wp-content/uploads зарегистрированным пользователям
  • Как предотвратить хотлинкинг медиафайлов
  • Как защитить файлы WordPress с помощью плагина Prevent Direct Access Gold
  • Как защитить загрузки WordPress и медиафайлы

Давайте начнем!

Как ограничить доступ к wp-content/uploads для зарегистрированных пользователей

WordPress хранит все ваши загруженные изображения и мультимедиа в каталоге wp-content/uploads.

Представьте, что вы певец и зарабатываете на жизнь, продавая музыкальные клипы зарегистрированным пользователям на своем сайте WordPress. Что произойдет, если ваши альбомы в папке wp-content/uploads будут доступны незарегистрированным пользователям и просочились? Вы понесете огромные потери в доходах. Чтобы избежать этого сценария, вам нужно немного поэкспериментировать с файлом .htaccess.

Примечание: Есть большая вероятность, что вы измените некоторые коды в файле .htaccess. В этом случае не забудьте заранее создать резервную копию файла .htaccess.

Откройте файл .htaccess в корневой папке вашего сайта WordPress и вставьте в него следующий фрагмент кода.


    RewriteEngine On
    RewriteCond %{HTTP_COOKIE} !.*wordpress_logged_in.*$ [NC]
    RewriteCond %{REQUEST_URI} ^(.*?/?)wp-content/uploads/.* [NC]
    RewriteRule . http://%{HTTP_HOST}%1/wp-login.php?redirect_to=%{REQUEST_URI} [L,QSA]

Приведенные выше коды используются для полного ограничения прямого доступа ко всем файлам, находящимся в папке wp-content/uploads.

Если вы хотите запретить прямой доступ только к некоторым определенным файлам, скопируйте и вставьте приведенные ниже коды в свой файл .htaccess:

# Защитить только некоторые файлы в папке загрузок


    RewriteEngine On
    RewriteCond %{HTTP_COOKIE} !.*wordpress_logged_in.*$ [NC]
    RewriteCond %{REQUEST_URI} ^(.*?/?)wp-content/uploads/.*.(?:gif|png|jpe?g|pdf|txt|rtf|html|htm|xlsx?|docx?|mp3|mp4|mov)$ [NC]
    RewriteRule . http://%{HTTP_HOST}%1/wp-login.php?redirect_to=%{REQUEST_URI} [L,QSA]

Как работают два приведенных выше фрагмента кода?

В четвертой строке модуль mod_rewrite проверяет наличие файла cookie, имя которого содержит «wordpress_logged_in». Если нет, это означает, что пользователь не вошел в систему.

Следующее правило проверяет, пытается ли пользователь получить доступ к каким-либо файлам в папке wp-content/uploads.

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

Мы показали вам, как ограничить прямой доступ к файлам в папке wp-content/uploads для незарегистрированных пользователей. Давайте перейдем к следующей части того, как предотвратить хотлинкинг ваших медиафайлов.

Как предотвратить хотлинкинг медиафайлов

Хотлинкинг происходит, когда другие люди используют изображения и другие мультимедийные файлы, такие как видео и аудио, с вашего веб-сайта и встраивают их непосредственно на свой сайт. Если вы не позволите им связать ваши медиафайлы, предоставив код для встраивания, это будет считаться кражей и нарушением авторских прав. Это также занимает пропускную способность и ресурсы вашего сервера.

Чтобы предотвратить горячее связывание ваших изображений и других медиафайлов, вам сначала нужно загрузить все важные медиафайлы в другой каталог, а затем добавить следующий фрагмент кода в файл .htaccess:

# НАЧАТЬ Защита от хотлинков

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.com/wp-content/uploads/important/.*$ [NC]
RewriteRule .(gif|jpg|jpeg|bmp|zip|rar|mp3|mp4|flv|swf|xml|php|png|css|pdf) $ - [NC,F,L]

Убедитесь, что вы заменили «домен.com» с вашим сайтом.

Если вы хотите показывать настраиваемую страницу «Нет хотлинкинга» вместо обычного сообщения об ошибке для тех, кто хотлинкует ваши медиафайлы, просто измените «Правило перезаписи” в кодах ниже немного:

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.com/wp-content/uploads/important/.*$ [NC]
RewriteRule.(gif|jpg|jpeg|bmp|zip|rar|mp3|mp4|flv|swf|xml|php|png|css|pdf)$ http://www.domain.com/no-hot-linking.jpg - [NC,F,L]

В приведенных выше кодах «http://domain.com/no-hot-linking.jpg» — это прямая ссылка на изображение, которое вы используете в качестве пользовательского сообщения об ошибке.

Вы также можете добавить несколько настроек в этот фрагмент кода для целей перенаправления. Изменив последнюю строку на конкретный URL-адрес вашей домашней или целевой страницы, вы можете попросить пользователей стать участниками для доступа к вашим медиафайлам.

Если вы хотите запретить хотлинкинг, но разрешить определенным поисковым системам и платформам социальных сетей доступ к вашим файлам, вы можете добавить следующий фрагмент кода в свой файл .htaccess:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domain.com/wp-content/uploads/important/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?bing.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yahoo.com [NC]
RewriteRule .(gif|jpg|jpeg|bmp|zip|rar|mp3|mp4|flv|swf|xml|php|png|css|pdf)$ http://www.domain.com/no-hot-linking.jpg - [NC,F,L]

Не забудьте заменить «домен.com» с реальным названием веб-сайта.

Метод .htaccess кажется простым и практичным. Однако, если вы полный новичок в WordPress и не очень уверены в кодах, вам следует подумать об использовании плагина для блокировки прямого доступа к вашим файлам.

Именно тогда в игру вступает плагин Prevent Direct Access (PDA) Gold!

Ограничьте доступ к медиатеке WordPress с помощью PDA Gold

Prevent Direct Access (PDA) Gold предлагает удобное и эффективное решение для предотвращения индексации ваших файлов WordPress поисковыми системами и кражи нежелательными пользователями. Плагин защищает неограниченное количество медиафайлов и всех типов файлов, таких как изображения (PNG, JPEG), документы (PDF, DOCX, PPTX), аудио и видео (MP4, MP3), которые вы загружаете на свой веб-сайт через медиатеку или через медиа, Страницы или сообщения.

Более того, PDA Gold позволяет вам устанавливать разрешения пользователей несколькими простыми щелчками мыши.

Давайте рассмотрим ключевые особенности PDA Gold.

Ограничение видимости медиафайлов WordPress для авторизованных пользователей

После защиты PDA Gold ваши личные файлы больше не будут доступны никому, кроме тех, кому вы предоставили разрешение.

Настройка страницы «Нет доступа»: Плагин позволяет отображать вашу пользовательскую страницу вместо сообщения об ошибке 404. Вы можете попросить неавторизованных пользователей войти в систему, стать участником для доступа к защищенным файлам, перенаправив их на страницу регистрации или входа.

Ограничение доступа по IP-адресам: Предотвращение прямого доступа позволяет вам получить полный контроль над вашими частными ссылками для скачивания, блокируя нежелательные IP-адреса, получающие доступ к вашим файлам. Кроме того, в версии Gold вы также сможете установить автоматическое истечение срока действия на количество кликов или дней.

Запретить Google индексирование личных файлов

Плагин информирует Google и другие поисковые системы, чтобы они не индексировали ваши защищенные файлы. Ваши защищенные файлы и ссылки для скачивания не будут отображаться в результатах поиска.

PDA Gold также поставляется с базовыми функциями безопасности WordPress.

Заблокируйте доступ к каталогу загрузок WordPress: Под защитой плагина папка wp-content/uploads, в которой вы храните все загруженные медиафайлы, будет защищена от посторонних. Никто не сможет красться и просматривать ваши медиафайлы больше.

Предотвращение хотлинкинга изображений и файлов: Благодаря этой функции никто не сможет украсть и использовать ваши изображения и файлы без разрешения. Он ограничивает использование ваших медиафайлов, что не позволяет другим скрытно встраивать эти URL-адреса в свои веб-сайты.

Как защитить загрузку WordPress и загрузку файлов

Итак, как защитить файлы WordPress с помощью Prevent Direct Access?

Во-первых, вам необходимо установить плагин Prevent Direct Access Lite и Gold на панели управления WordPress в разделе «Плагины».

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

  • Выберите режим «Просмотр списка».
  • Плагин создает дополнительный столбец «Предотвратить прямой доступ». Нажмите «Защитить этот файл», если вы хотите, чтобы другие не могли получить доступ к этому файлу.
  • Теперь файл защищен.

Убедитесь, что вы очистили все кеши, включая кеш хостинга, плагины кеша и кеш браузера. Ваши важные файлы и их личные ссылки могут быть неправильно защищены, если они кэшированы.

Предоставление доступа к частным файлам определенным URL-адресам доменов/рефереров

Помимо предотвращения прямого доступа и хотлинкинга к URL-адресу вашего файла, еще одной ключевой функцией, которую вы хотите достичь, является разрешение доступа из ваших собственных или определенных желаемых доменов.

Другими словами, вы можете ограничить доступ к файлам для определенных пользователей в зависимости от того, откуда они приходят, т.е. по реферальным ссылкам.

Например, вы можете указать, что только те, кто приходит с youraffiliatewebsite.com, могут загружать ваши личные PDF-файлы. Те, у кого есть прямой URL-адрес файла, не смогут этого сделать.

Защита папок: защита каталогов WordPress

Вместо того, чтобы защищать файлы по отдельности, вы можете заблокировать прямой доступ ко всем файлам в определенной папке с помощью ограничения доступа поверх PDA Gold.

Чтобы использовать функцию защиты папок, просто выберите папку в корневом каталоге или в каталоге загрузки WordPress, чтобы начать работу. Затем выберите, какие роли пользователя или имя пользователя могут получить прямой доступ к этим папкам.

Вы также можете выбрать, какие типы файлов следует защищать в этих каталогах, например, только PNG и PPT.

Безопасный каталог файлов и загрузок WordPress сейчас

Мы предоставили вам 2 эффективных решения для предотвращения прямого доступа к вашей папке wp-content/uploads, а также для защиты ваших медиафайлов WordPress от хотлинков и неавторизованных пользователей.

Вы можете либо добавить несколько фрагментов кода в свой файл .htaccess, либо воспользоваться мягким вариантом использования плагина Prevent Direct Access Gold. Всегда помните о том, что нужно заранее сделать резервную копию вашего файла .htaccess и вашего сайта, так как небольшая ошибка, допущенная в этом файле, может серьезно повредить ваш сайт.

Чего ты все еще ждешь? Защитите свои ценные файлы и носители прямо сейчас.

Сообщите нам, какое решение вы используете для блокировки прямого доступа к вашим медиафайлам, оставив комментарий ниже.


фото Джон Мур на Скрыть