запретить горячую ссылку на контент за пределами сайта?


У меня есть сайт www.example.com, где я обслуживаю весь статический контент (например, http.//www.example.com/image.jpg) с CDN с URL-адресами, такими как http://static.example.com/image.jpg

Правило Apache 2.htaccess запрещает непустые, non-example.com ссылки:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://example.cloudfront.net [NC]
RewriteRule \.(jpeg|jpg|gif|bmp|png|mp3)$ - [NC,F,L]
</IfModule>

Я все еще получаю огромное количество трафика с очень популярного веб-сайта, который использует какую-то функцию "сводки новостей" и горячие ссылки на www.example.com/image.jpg (вместо static.example.com ): этот ресурс существует (по причинам извлечения источника), но URL-адрес нигде не опубликован.

На самом деле, обслуживание стольких 403-х приводит к отключению моего сервера.

Как можно заблокировать такой трафик горячих ссылок или, по крайней мере, как его перенаправить в CDN до того, как он достигнет и выведет из строя apache2?

Author: blau, 2013-03-18

2 answers

Невозможно переслать www > cdn, не достигнув запроса на главном сервере, так как они ссылаются на вас.

Мой совет - не перенаправлять 301, а вместо того, чтобы просто указывать 404, надеюсь, таким образом они прекратят горячую связь с вами.

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

Мой Совет По Детализации

  • Рассмотрим обновление вашего хостинга (горячая ссылка IMG на самом деле помогает вашему SEO) Балансировщик нагрузки может хорошо послужить вам здесь, выполнив 403-е, 404-е или 301-е годы.
  • Рассмотрите возможность использования 404, если вы не хотите, чтобы они были связаны горячей связью.

Другой вариант заключается в том, что вы можете использовать robots.txt на вашем CDN, но опять же, на горячие ссылки в эти дни не следует смотреть свысока, так как, как я уже сказал, невозможно использовать rel=nofollow на изображениях, и это немного помогает вашему SEO. Я лично бы оценил трафик / ссылки и обновление моего сервера. Но кроме этого... подавайте им старый добрый 404, если они ссылаются на что-то, чего не существует - они скоро остановятся.

 2
Author: Simon Hayter, 2013-03-18 18:38:25

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

Один совет по производительности, который может вам помочь, - использовать nginx и Apache на одном сервере. Запустите apache на нестандартном порту. Пусть nginx запустится на порту 80 и обратит запросы прокси-сервера к apache. Правило перезаписи изображений можно разместить на сервере nginx. Вы можете выбрать эту настройку, потому что nginx быстрее и легче, чем apache, и может обрабатывайте гораздо больше таких простых типов запросов. Вот руководство по реализации этого: http://tumblr.intranation.com/post/766288369/using-nginx-reverse-proxy

 1
Author: Stephen Ostermiller, 2013-03-19 00:45:21