Запрет доступа к некоторым файлам

Discussion in 'PHP' started by Roen, 12 Oct 2009.

  1. Roen

    Roen New Member

    Joined:
    25 Jun 2008
    Messages:
    18
    Likes Received:
    3
    Reputations:
    1
    Пример:
    Есть сайт www.site.com, на бэкграунде которого стоит картинка, как сделать так, чтобы когда заходят на www.site.com картинка нормально отображалась, но при заходе www.site.com/картинка.jpg - стоял запрет. Тоесть чтобы саму картинку не могли скачать.
    Также интересует запрет на скачивание *.css файлов, или *.js

    Как можно поставить запрет на скачивание таких файлов? Так сказать "Авторское право" ;)

    Если ставить в .htaccess
    Order Deny,Allow
    Deny from all
    Allow from localhost

    то картинки не отображаются при заходе на www.site.com
     
  2. Sharky

    Sharky Elder - Старейшина

    Joined:
    1 May 2006
    Messages:
    487
    Likes Received:
    312
    Reputations:
    46
    можно поступить ректальным способом... создать скрипт который будет выводить нужные картинки... и запрашивать все изображения через него ...а в httaccess прописать чё то типа
    PHP:
    <Files "*.jpg">
    order allow,deny
    deny from all
    </Files>
    то есть смысл в том что все дейтсвия скрипт обработчик будет производить локально
     
  3. Roen

    Roen New Member

    Joined:
    25 Jun 2008
    Messages:
    18
    Likes Received:
    3
    Reputations:
    1
    Идея интересная, только не знаю как её реализовать. Можно пример такого скрипта?
     
  4. Uex Urgent

    Uex Urgent Злостный Смайлик

    Joined:
    6 Feb 2009
    Messages:
    236
    Likes Received:
    463
    Reputations:
    452
    вот такой вариант подойдет?

    http://www.filehoster.ru/files/dp4112


    Код скопировал с mail.ru, вроде они тоже так защищают фотки от копирования. От новичков защитит, я так думаю
     
    _________________________
    4 people like this.
  5. Sharky

    Sharky Elder - Старейшина

    Joined:
    1 May 2006
    Messages:
    487
    Likes Received:
    312
    Reputations:
    46
    я подумал что не надо поступать ректально

    Википедия со мной согласилась:
    PHP:
       #Пример запрета хотлинкинга с помощью модуля Apache mod_rewrirte

       #Код добавляется в файл конфигурации веб-сервера (httpd.conf) или в локальный файл конфигурации хоста (.htaccess).
       # Предотвращаем загрузку изображений с хоста www.server.com, 
       # за исключением файла баннера banner.jpg
       # Вместо любого запрошенного изображения вставляем заглушку
       # null.gif размером в несколько килобайт, находящуюся по адресу
       # http://www.server.com/images/null.gif
     
       
    RewriteCond %{HTTP_REFERER} !^http://www\.server\.com/ [NC]
       
    RewriteCond %{REQUEST_URI} !banner\.jpg$ [NC]
       
    RewriteCond %{REQUEST_URI} !null\.gif$ [NC]
       
    RewriteRule \.(jpe?g|gif|bmp|png)$ http://www\.server\.com/images/null\.gif [L]
    копай дальше в эту сторону
     
    1 person likes this.
  6. Roen

    Roen New Member

    Joined:
    25 Jun 2008
    Messages:
    18
    Likes Received:
    3
    Reputations:
    1
    Спасибо за ответы. Жаль, но .htaccess не работает, тоесть он запрещает доступ к файлам, но эти файли также не отображаются на странице сайта...

    Файл mail.html вобще не открывается. Смотрел код, защиты там не заметил, картинка и .css нормально грузятся по ссылкам.
     
    1 person likes this.