Как предотвратить хотлинкинг изображений в WordPress?
Опубликовано: 2018-12-12«Должен ли я сохранить или удалить ссылки на изображения в WordPress?» Это вопрос, о котором можно долго спорить.
Даже если после выбора управляемого хостинга WordPress вы могли сохранить настройки по умолчанию. Но представьте, когда вы загружаете и вставляете изображение в статью или на страницу, к самому изображению автоматически добавляется ссылка.
И если ваши посетители нажмут на это изображение в статье, они будут перемещены на другой веб-сайт или страницу, на которой изображение отображается только в исходном размере. Хотя в целом изображения масштабируются так, чтобы они идеально подходили к вашим статьям. Это явление называется хотлинкингом или встроенными ссылками.
Что такое хотлинкинг изображений?
Хотлинкинг, также известный как «кража полосы пропускания», представляет собой неправомерную практику, осуществляемую отдельными лицами, которые создают прямые ссылки на контент (изображения, видео), размещенный на других серверах, с целью использования своих вычислительных ресурсов и ресурсов полосы пропускания.
Классический пример состоит из прямых ссылок на мультимедийное содержимое на сервере A , которые вставляются в веб-страницы, обслуживаемые сервером B ; браузер посетителя, который получает доступ к веб-странице на сервере B , будет отправлять HTTP-запросы на сервер A для получения мультимедийных ресурсов, что приводит к нерациональному использованию ЦП и полосы пропускания и, в конечном итоге, к деньгам.
Как работает хотлинкинг?
Вы должны вернуться к HTML-коду, чтобы сначала понять, как изображения отображаются на веб-страницах.
Не вдаваясь в подробности, HTML — это простой язык, структурированный разметкой: теги (в данном случае HTML-теги) иерархически разграничивают каждый элемент страницы, обрамляя значения и привнося атрибуты в их содержимое (ширину или высоту элемента). изображение или альтернативный текст, позволяющий, например, его описание).
Классический вывод изображения реализован с помощью тега img для изображения и тега alt для описания в коде страницы, расположенной на сайте. Например, рассмотрите следующие сценарии.
HTML код сервера А сайта:
<img src="/image.jpg" alt="описание" />
Таким образом, веб-сайт, выполняющий горячую ссылку, просто использует в атрибуте src (что означает источник) тегов изображений прямой адрес ваших изображений.
Это то, что мы обычно делаем, например, когда мы отображаем наши изображения с наших собственных веб-сайтов.
HTML-код сайта сервера B:
<img src="http://www.yourdomain.com/image.jpg" alt="описание" />
В конце концов, вы получаете одно из ваших изображений, размещенное на чужом веб-сайте без вашего разрешения, и вишенка на торте: виновник этого шалости жалит вашу пропускную способность!
Как обнаружить хотлинкинг?
Это не очевидно!
Вы по-прежнему можете использовать такие инструменты, как TinEye. Это расширение для веб-сайта и браузера, которое сможет искать изображения, похожие на то, которое вы укажете. Он работает очень хорошо на ограниченном количестве веб-сайтов, которые индексирует TinEye, и требует проверки всех ваших изображений вручную!
Другое решение — автоматизировать обнаружение изображений, загруженных с веб-сайта, отличного от вашего. Это технически сложнее, но работает очень хорошо.
В принципе, файл .htaccess сервера Apache отвечает за перехват изображений до их отображения.
Как предотвратить хотлинкинг в WordPress с помощью .htaccess
Давайте посмотрим, как вы можете предотвратить хотлинкинг в своем WordPress, вставив несколько строк в файл .htaccess в корневой папке документа.
Войдите на свою платформу хостинга , используйте свои учетные данные для входа в любую программу FTP (я использую Filezilla), перейдите в /public_html/ → и получите доступ к файлу .htaccess .

Представьте, какое влияние может оказать такое поведение, если несколько ваших изображений будут отображаться на форумах с очень высоким трафиком?
Во-первых, вам нужно просмотреть/отредактировать (или создать) файл .htaccess в корневом каталоге вашего сайта.
После открытия файла вставьте в конец следующие строки и сохраните файл:
RewriteEngine включен RewriteCond "%{HTTP_REFERER}" "!^$" RewriteCond "%{HTTP_REFERER}" "!www.yourdomain.com" [NC] RewriteRule "\.(jpg|jpeg|png|gif|svg)$" "-" [F,NC]
Примечание. Не забудьте заменить yourdomain.com на имя и расширение вашего веб-сайта.
- Первая строка служит для активации mod_rewrite .
- Вторая строка разрешает пустые рефереры. Вам следует включить это, поскольку некоторые посетители могут использовать персональный брандмауэр или антивирусную программу, которая удаляет информацию о реферере страницы, отправленную веб-браузером.
- Третья строка, с другой стороны, предотвращает загрузку и горячее связывание содержимого, когда HTTP_REFERER явно не установлен на yourdomain.com , который должен быть защищен. В этом случае необходимо заменить yourdomain.com доменным именем, которое вы хотите защитить.
- В четвертой строке указываются запрещенные расширения, которые запрещены хотлинкингом.
В этом случае вы можете указать любое количество расширений, разделенных символом « | " персонаж. Кроме того, в этом случае сравнение нечувствительно к регистру, и в случае положительного совпадения запрос перезаписывается в пустой файл, вызывая ошибку 403 .
Из браузера, следуя примеру серверов A и B в начале, веб-страница, загруженная сервером B , не будет иметь содержимого, загруженного A . Таким образом, использование пропускной способности сервера А и ЦП становится незначительным и ограничивается только обработкой запроса механизмом перезаписи.
Используйте плагин, чтобы избежать хотлинкинга
Как вы, наверное, знаете, плагин может расширить функциональность вашего веб-сайта и, таким образом, предотвратить хотлинкинг на вашем веб-сайте. Вот 2 самых популярных плагина в этой области:
1. Безопасность iThemes
iThemes Security устраняет распространенные уязвимости, останавливает автоматизированные атаки и защищает учетные данные. Плагин имеет систему сканирования на наличие вредоносных программ, а также возможность отслеживать пользователей, вносящих изменения в контент, а также подключения и отключения. Многие другие функции помогут вам защитить ваш сайт.
Завершение!
Чтобы узнать, заблокировали ли вы хотлинк через .htaccess или плагин, проверьте свой сайт на altlab.com, где вам нужно будет ввести адрес изображения. Если он не отображается или отображается выбранное вами изображение, антихотлинк будет активен.
Знаете ли вы другие способы удаления ссылок из изображений WordPress? Если это так, поделитесь своим способом сделать это в комментариях ниже.
*Это гостевой пост Сауда Раззака из Cloudways.
* Этот пост может содержать партнерские ссылки, что означает, что я могу получить небольшую плату, если вы решите совершить покупку по моим ссылкам (без дополнительной оплаты для вас). Это помогает нам поддерживать работоспособность и актуальность WPMyWeb. Спасибо, если вы используете наши ссылки, мы очень ценим это! Учить больше.