Не грузятся картинки из turbopic.org

Тема в разделе "JavaScript", создана пользователем new_forward, 26 сен 2015.

Модераторы: ZiX
  1. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Доброго времени суток, такая проблема, картинки из фотохостинга turbopic.org на сайте не отображаются или отображаются через раз, дело в том что картинки отдают 403 код (скрин во вложении).

    Можно их как то или перегружать или как то вообще это исправить?

    Вот пример, Перейти по ссылке если так открыть то все норм, а если так
    Код:
    <img src="http://turbopic.org/img/2015_06/i557d4250b133a.jpg" border="0"/>
    то не открывается o_O
     

    Вложения:

    • screen.jpg
      screen.jpg
      Размер файла:
      303,5 КБ
      Просмотров:
      9
    Последнее редактирование: 26 сен 2015
  2. Renny

    Renny Создатель

    Регистр.:
    3 авг 2014
    Сообщения:
    25
    Симпатии:
    642
  3. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Для меня тоже загадка :eek:
     
  4. horuz

    horuz Создатель

    Регистр.:
    17 окт 2012
    Сообщения:
    19
    Симпатии:
    3
    можно всем адресам картинок с фотохостинга подправить адрес, убрать упоминание домена.
    например так /img/2015_06/i557d4250b133a.jpg
    а в папке img положить скрипт на пхп e404.php, который cUrl загружал бы нужные вам файлы и отдавал пользователю
    в папку со скриптом положить htaccess
    Код:
    ErrorDocument 404 e404.php
    в самом файле адрес будет доступен в переменных гет.

    это конечно уже не из области яваскрипта. но яваскриптом подделать реферрер все равно не получится.
     
  5. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Доброго времени суток.

    Вот так пойдет?
    Код:
    ErrorDocument 404 e404.php?img_url=http://turbopic.org/img/2015_06/i557d4250b133a.jpg
    Пользователи будут попадать на e404.php, где будет доступен img_url ?
     
  6. Marshan Busiko

    Marshan Busiko Постоялец

    Регистр.:
    29 сен 2007
    Сообщения:
    102
    Симпатии:
    77
    По-моему, этот вариант не сработает, ведь 404 ошибка не на вашем сайте возникает, на при обращении к turbopic. Соответственно, браузер пользователя и дальше будет получать эту ошибку.

    Можно в вашем серверном скрипте перед выдачей HTML контента пользователю анализировать его и если там встречается картинка с turbopic заменять прямой адрес картинки на ваш кеширующий скрипт. Что-то типа:

    Код:
    <img src="http://turbopic.org/img/2015_06/i557d4250b133a.jpg"> заменять на
    
    <img src="/turbopic.php?url=/img/2015_06/i557d4250b133a.jpg">
    turbopic.php - это скрипт на вашем сервере, который с нужным реферером закачивает картинку с turbopic и выдаёт пользователю.

    Не забудьте сделать кеширование картинок, чтобы скачивание с turbopic происходило только один раз, а дальше картинка выдавалась уже с вашего локального сервера для уменьшения нагрузки и увеличения быстродействия.
     
  7. new_forward

    new_forward

    Регистр.:
    5 май 2008
    Сообщения:
    668
    Симпатии:
    44
    Спасибо, за мысль в общем, сделал вот так:
    Код:
    RewriteRule ^img/(.*\.jpg)$ show_img.php?img=$1 [L]
    Обработчик тащит картинку и выдает. :)