Есть ли какие-либо недостатки в отключении хотлинкинга с помощью.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".