Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Болталка (https://forum.antichat.xyz/forumdisplay.php?f=46)
-   -   .htaccess запрет прямых ссылок на изображение (https://forum.antichat.xyz/showthread.php?t=56327)

it's my 21.12.2007 09:30

.htaccess запрет прямых ссылок на изображение
 
Написал в хтацесе запрет на хотлинкинг:

Код:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://site.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://site.ru$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.site.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.site.ru$ [NC]
RewriteRule .*\.(gif|jpeg|jpg|png)$ http://site.ru/fuck.gif [R,NC]

Но почему-то не работает, может я в чем-то ошибся?

groundhog 21.12.2007 10:17

Ну а в логах что?

it's my 21.12.2007 10:41

вот ЛОГИ

groundhog 21.12.2007 10:50

А в error_log чисто?

it's my 21.12.2007 10:59

Код:

[Fri Dec 21 07:54:55 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/favicon.ico
[Fri Dec 21 07:54:55 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/arena/
[Fri Dec 21 07:55:17 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/favicon.ico
[Fri Dec 21 07:55:17 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/arena/
[Fri Dec 21 08:13:30 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/images/logo.gif
[Fri Dec 21 08:13:30 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/arena/
[Fri Dec 21 08:13:38 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/images/style.css
[Fri Dec 21 08:13:38 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/arena/
[Fri Dec 21 08:13:45 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/images/logo.gif
[Fri Dec 21 08:13:45 2007] [error] [client 90.xxx.xxx.50] File does not exist: /home/xxx/domains/site.ru/public_html/arena/

и всё.... здесь тоже пусто

groundhog 21.12.2007 11:09

Кажется у тебя точка не везде слеширована... Хотя ХЗ, давно мод реврайтом не пользовался, в общем попробуй так:

Код:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://site\.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://site\.ru$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www\.site\.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www\.site\.ru$ [NC]
RewriteRule .*\.(gif|jpeg|jpg|png)$ http://site\.ru/fuck\.gif [R,NC]

З.Ы. Кстати, если что - пустые рефереры тоже надо запретить: RewriteCond %{HTTP_REFERER} !^$
З.Ы.Ы. Если не изменилось ничего, попробуй последним условием вызова сделать RewriteRule .*\.(jpg|gif)$ - [F] вместо RewriteRule .*\.(gif|jpeg|jpg|png)$ http://site\.ru/fuck\.gif [R,NC]. Это просто даст отлуп по имажам вместо переадресации на твой фуск.

it's my 21.12.2007 11:25

Спасибо помогло, сделал так:
Код:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://site\.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://site\.ru$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www\.site\.ru/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www\.site\.ru$ [NC]
RewriteRule .*\.(gif|jpeg|jpg)$ http://site\.ru/fuck.png [R,NC]

Слэширование помогло, но не получалось еще из-за того что в случае обращение к изображениям на хосте формата gif, jpeg, jpg и png идет ридерект на fuck.gif, а так как у файла fuck.gif расширение gif ридерект опять идет на него же и так до бесконечности =/ Вообщем пасиба

groundhog 21.12.2007 11:30

Ну добро! Добавь тогда свой фуск в "доверенные" изображения:

Код:

RewriteCond %{REQUEST_URI} !^http://site\.ru/fuck\.png
и вообще всё будет замечтайся...

it's my 21.12.2007 11:42

млять!!!!! Перестало работать, хотя хтацес не изменился =/
В чём могут быть еще проблемы?

groundhog 21.12.2007 12:06

Хм... После чего перестало работать? Покажи текущий вариант директив.


Время: 00:56