Перейти к содержимому

Реферальная программа Мегаплана


  • Закрытая тема Тема закрыта

Кому отдавать файл, а кому не отдавать

#1 EugeneM

EugeneM
  • Пользователь
  • 20 сообщений
  • Репутация: 0
0

Отправлено 27 Август 2010 - 02:53

Ситуация такая.
Хотя, может и не по теме немного...

Есть ресурс xxxxx.ru. Представляет из себя форум, к которому приделано хранение изображений. Сами файлы изображений хранятся в xxxxx.ru/gallery. В постах пользователи, соответственно, пишут
[img]http://xxxxx.ru/gallеry/filename.jpg[/img]
и появляется картинка.

И еще есть ресурс yyyyy.ru. Тоже форум. Чьи пользователи последнее время повадились размещать свои картинки в галерее первого форума. Места там не жалко, но вот лишняя нагрузка, пускай и очень небольшая нафиг не нужна. Да и чисто из принципа. А это важнее. )))) В идеале бы хотелось сделать, чтобы "чужим" или вообще ничего не отдавалось или возвращалась пустышка типа noimage.jpg.

Интересует, возможно ли такое сделать. И если да, то как. Нужно не полное решение, а просто пнуть в нужную сторону...
А то в голову идет только такой путь (в общих чертах):
1. Закрыть эту директорию вообще для всех.
2. На "родном" форуме сделать какой-нибудь getimage.php, которому в параметрах будет передаваться id файла и какой-то уникальный идентификатор пользователя кто хочет эту картинку открыть на данном форуме (в моем случае это xxxxx.ru). Если пользователь с данным ID в настоящее время активен, то отдаем картинку.
3. Ну и изменить парсинг ББ-кодов. Чтобы абсолютные пути к изображениям менялись на этот скрипт.

Таким образом чужим оно показываться не будет. Но нагрузка возрастет (это не особо важно, т.к. ресурсы позволяют - тут больше дело принципа).
Может как-то проще можно???

 

 

  • 0

#2 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 27 Август 2010 - 21:37

Ситуация такая.
Хотя, может и не по теме немного...

Есть ресурс xxxxx.ru. Представляет из себя форум, к которому приделано хранение изображений. Сами файлы изображений хранятся в xxxxx.ru/gallery. В постах пользователи, соответственно, пишут

[img]http://xxxxx.ru/gallеry/filename.jpg[/img]
и появляется картинка.

И еще есть ресурс yyyyy.ru. Тоже форум. Чьи пользователи последнее время повадились размещать свои картинки в галерее первого форума. Места там не жалко, но вот лишняя нагрузка, пускай и очень небольшая нафиг не нужна. Да и чисто из принципа. А это важнее. )))) В идеале бы хотелось сделать, чтобы "чужим" или вообще ничего не отдавалось или возвращалась пустышка типа noimage.jpg.
...
Может как-то проще можно???

EugeneM,
эта проблема называется "защита от хотлинкеров".
Решение ее достигается средствами апача, примерно так:
в .htaccess пишется что-то вроде
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?xxxxx.ru [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://xxxxx.ru/images/noimage.jpg [NC,R,L]

Немного погодя, вспомнилось, что год назад уже отвечал на практически такой же вопрос ;) :
http://www.masterweb...&...ost&p=30666
  • 0

#3 WebGraf

WebGraf
  • Пользователь
  • 15 сообщений
  • Репутация: 0

Отправлено 13 Январь 2011 - 20:10

Вот только не все браузеры и не всегда передают referer.
Но другого пути не вижу.
  • 0

#4 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 18 Январь 2011 - 22:29

Так же можно запретить доступ к картинкам с определенных IP - например IP сервера, где размещен форум.
  • 0


Оформление форума – IPBSkins.ru