Есть ли какие-либо недостатки в отключении хотлинкинга с помощью.htaccess?

Я видел много запросов на изображения, размещенные на моем сервере с других сайтов.

Вместо того, чтобы позволить этому продолжать, я рассматриваю использование mod_rewrite и.htaccess, чтобы предотвратить это, используя что-то вроде

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain.com/.*$ [NC]
RewriteRule \.(gif|jpg|jpeg|png)$ - [F]

Я уверен, что где-то читал, что могут быть какие-то нежелательные побочные эффекты или "ошибки", которые могут вас поймать, но не могут найти источник или что-нибудь об этом. Большинство сайтов дают вам только фрагмент кода, а не обсуждают преимущества и недостатки этого подхода.

Существуют ли такие нежелательные побочные эффекты или "ошибки", о которых мне следует знать, если я решу разместить их на своем сервере?

2 ответа

Решение

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

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

Кроме того, я изменил скрипт для перенаправления в файл PHP, чтобы я мог выполнять различные действия в зависимости от домена и типа запрашиваемого файла:

RewriteRule .*\.(jpg|jpeg|gif|png|mp4|mp3)$ http://www.example.com/hotlink.php?%{SERVER_NAME}%{REQUEST_URI} [R,NC]

Таким образом, PHP-скрипт получает доменное имя (у меня есть несколько доменов, размещенных в одной учетной записи) и URL, который активировал защиту от хотлинков.

Единственные реальные ошибки - это если вы попытаетесь использовать изображения, скажем, с mobile.yourdomain.com или someotherdomainIown.net, и они заблокированы этим. Я также видел, как многие администраторы перенаправляли изображения с горячей ссылкой на другие изображения, например: "Этот человек крадет пропускную способность с yourdomain.com".

Другие вопросы по тегам