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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Отображение изображений с подменой адреса (https://forum.antichat.xyz/showthread.php?t=149872)

serg-php 20.10.2009 22:21

Отображение изображений с подменой адреса
 
Столкнулся с проблемой скрытия адреса изображения.

Есть сайт А и сайт Б

На сайте А имеются картинки. Нужно сделать так, чтобы на сайте Б отбражались эти картинки, но не было видно, что они подгружаются с другого сайта.

Прмер, адрес при просмотре свойств изображения пишется его адрес такой _http://А.ru/images/123.jpg

а его фактический _http://Б.ru/images/123.jpg

Можно ли это решить через mod_rewrite

Покажите пример!

Всем респект!

qW1zer 20.10.2009 22:25

Как вариант могу предложить:
в .htaccess
Цитата:

RewriteEngine On
RewriteRule ^123.jpg 123.php [L]
А в 123.php сделать что-то с gd2 то есть подгрузить или еще как-то,вот не определился я еще со вторым. . может сам чего-нибудь придумаешь .. скажи и мне

serg-php 20.10.2009 22:27

qW1zer,

впринципе это идея!

Byte_ 20.10.2009 22:27

Создаём скрипт
img.php
<?
$site_url = 'http://a.ru';
echo file_get_contents($site_url.$_GET['url']);
?>
теперь наши картинки выглядят так:
<img src="/img.php?url=/logo.png" />

serg-php 20.10.2009 22:29

У меня был такой вариант

RewriteRule ^images/(.*)$ http://mysite.ru/images/$1 [L]

Правда, на сайте http://hissite.ru

В свойсвах картинки отображалось,


http://mysite.ru/images/картинка.jpg

serg-php 20.10.2009 22:31

Byte_,


сейчас проверим!

qW1zer 20.10.2009 22:32

Byte_
Хороший вариант,но:
Кто ищет тот всегда найдет. . .
То есть,проснифать в принципе кому надо - будет легко . . .
Но в библиотеку свою добавлю

serg-php 20.10.2009 22:36

qW1zer,

идея библиотеки звучит супер!

Все, что нужно, всегда под рукой!

serg-php 20.10.2009 22:43

А другие варианты есть?

У меня проблема внедрения!

Byte_ 20.10.2009 22:52

serg-php, можно узнать, чем мой вариант плох?
он позволяет 100% скрыть url ресурса с которого берутся картинки.
если не нравятся урлы вида ?url=, настройте RewriteRule.
RewriteRule ^images/(.*)$ /img.php?url=$1 [L]

serg-php 20.10.2009 22:59

Цитата:

Создаём скрипт
img.php
<?
$site_url = 'http://a.ru';
echo file_get_contents($site_url.$_GET['url']);
?>
теперь наши картинки выглядят так:
<img src="/img.php?url=/logo.png" />
Такую конструкцию оказалось сложно внедрить в статический шаблон смарту!

serg-php 20.10.2009 23:06

В урле картинки пишу <img src="/img.php?url=/logo.png" />

далее создаю файл img.php
Цитата:

<?
$site_url = 'http://a.ru';
echo file_get_contents($site_url.$_GET['url']);
?>
<img src="/img.php?url=/logo.png" />
Запускаю, но адреса не изменились и имеют вид http://localhost/img.php?url=/logo.png

Byte_ 20.10.2009 23:09

Цитата:

Запускаю, но адреса не изменились и имеют вид http://localhost/img.php?url=/logo.png
Цитата:

RewriteRule ^images/(.*)$ /img.php?url=$1 [L]
теперь путь выглядит как /images/logo.png

зы:
в файле img.php
<img src="/img.php?url=/logo.png" />
!не надо!
это в шаблоне должно быть только ;)

serg-php 20.10.2009 23:13

Цитата:

в файле img.php
<img src="/img.php?url=/logo.png" />
!не надо!
А я и не писал!

serg-php 20.10.2009 23:15

Создал файл test.php ,

положил в него


PHP код:

<?

echo "<img src='/img.php?url=/logo.png' />";

?>

создал файл

img.php

<?
$site_url = 'http://mysite.com';
echo file_get_contents($site_url.$_GET['url']);
?>


Что-то параметр не передается!

Pashkela 20.10.2009 23:22

По сабжу - можно, скачать картинки предварительно себе, в чем трабл не понял. Вопрос идентичен такому:

"Могу ли я замутить у себя яндекс, чтобы типо яндекс, но все бралось оттуда, ламос бы тупил по черному и не мог видеть в картинках ссылок на яндекс, и сервер чтобы не упал через 2,5 секунды"

PS: Могу подогнать много клевых картинок, посетителей эдак на 100 000 000 :)

serg-php 20.10.2009 23:24

Pashkela,

ну ты и загрнул!

Масштабно!

Byte_ 20.10.2009 23:26

Цитата:

$site_url = 'http://mysite.com';
попробуй $site_url = 'http://mysite.com/';

Pashkela 20.10.2009 23:30

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

serg-php 20.10.2009 23:31

Pashkela, мне не для сео!

serg-php 20.10.2009 23:32

Просто нужно, чтобы юзер смотря свойство изображения видилел адрес сайта, на котором он находится, а не адрес откуда картинка грузится!

m0Hze 21.10.2009 00:20

Пиздиш контент? Ублюдаг :(

m0Hze 21.10.2009 00:21

/*Как уже сказали выше, пизже всего через мод-реврайт */

serg-php 21.10.2009 00:27

m0Hze,

обижаешь!


Просто есть мои два сайта у одного хостера, в целях экономии дискового пространства ...

Pashkela 21.10.2009 00:36

ну дык сложи все картинки, ну я не знаю, в phpmyadmin например, сделай на эту папку chmod 777 и дай символическую ссылку на неё с обоих сайтов:

ln -s /usr/local/phpmyadmin /var/www/ту_полный_путь_до_сайта_А

ln -s /usr/local/phpmyadmin /var/www/ту_полный_путь_до_сайта_Б

m0Hze 21.10.2009 00:40

Цитата:

Сообщение от Pashkela
ну дык сложи все картинки, ну я не знаю, в phpmyadmin например, сделай на эту папку chmod 777 и дай символическую ссылку на неё с обоих сайтов:

ln -s /usr/local/phpmyadmin /var/www/ту_полный_путь_до_сайта_А

ln -s /usr/local/phpmyadmin /var/www/ту_полный_путь_до_сайта_Б

+10
Паша истену глоголед

ErrorNeo 21.10.2009 00:48

у меня был похожий трабл - делал сайт с видео-контентом, сам же "контент" хранил как вы думаете где? правильно, на контакте :cool:
На самом сайте вешал лишь плеер и транслировал предварительно залитый туда видос с контакта.

Трабла была в том, чтобы как-то(хотя бы визуально) скрыть то, что видео льется с контакта.

При лобовом решении ссылка на источник видое содержалась в теле html старницы и это было очень не кошерно.

На проект забил, но как это проще было решить - все еще интересно)

Друган советовал создать какой-то типа буфер на другом сайте, в результате чего источником видео бы как бэ был мой другой сайт а совсем не контакт...

в общем тема интересна. причем не только для картинок но и для видоса

m0Hze 21.10.2009 00:51

Цитата:

Сообщение от ErrorNeo
у меня был похожий трабл - делал сайт с видео-контентом, сам же "контент" хранил как вы думаете где? правильно, на контакте :cool:
На самом сайте вешал лишь плеер и транслировал предварительно залитый туда видос с контакта.

Трабла была в том, чтобы как-то(хотя бы визуально) скрыть то, что видео льется с контакта.

При лобовом решении ссылка на источник видое содержалась в теле html старницы и это было очень не кошерно.

На проект забил, но как это проще было решить - все еще интересно)

Друган советовал создать какой-то типа буфер на другом сайте, в результате чего источником видео бы как бэ был мой другой сайт а совсем не контакт...

в общем тема интересна. причем не только для картинок но и для видоса

Во тут можно "буфером" назвать тот скрип,что дали выше.Который качает и налету выводит видео с вк.Видео на сайте не задерживаеться,но это ояебу убьет систему при 1к просмотре ^_^

serg-php 21.10.2009 00:56

ErrorNeo, солидарен с тобой!

serg-php 21.10.2009 00:57

Цитата:

Который качает и налету выводит видео с вк.Видео на сайте не задерживаеться,но это ояебу убьет систему при 1к просмотре ^
А мене жесткие есть решения?

Через мод_рерайт?

m0Hze 21.10.2009 01:07

Цитата:

Сообщение от serg-php
А мене жесткие есть решения?

Через мод_рерайт?

Самый пезджый вариант от пашкелы.Все остальное - унылое говнецо.

serg-php 21.10.2009 01:19

m0Hze,

а вот и не прав,

мне нужно скрыть адреса картинок от моих модеров, чтобы они не видели основного сайта!

imajo.ati 21.10.2009 03:57

RewriteEngine On
RewriteBase /
RewriteRule ^test\.png$ http://www.google.ru/intl/en_com/images/logo_plain.png

добавь это в httpd.conf или в AccessFileName в корень

теперь создай html файл с содержимым:
PHP код:

<img src="http://твой_сайт.ру/test.png" alt=""

и зайди на него.



не забудь включить mod_rewrite в апаче

Gray_Wolf 21.10.2009 09:32

Цитата:

Сообщение от serg-php
m0Hze,

а вот и не прав,

мне нужно скрыть адреса картинок от моих модеров, чтобы они не видели основного сайта!

Дак вариант Пашкеллы подразумевает что вводя урлы
www.site1.com/img
и
www.site2.ru/img
Мы будем попадать в одну и туже физическую папку, но УРЛы можно использовать разные. (т.е. делаем что-то типо ярлыков)

И почитайте инфу о жестких ссылка в Линуксе...

Линукс позволяет создавать жесткие и символичесские ссылки на файлы и каталоги.
Символические ссылки это теже ярлыки в винде, а жесткие ссылки это копия файла(каталога) которая ссылается на тот-же самый участок памяти в файловой системе что и оригинал.

Т.е. мы делаем точную копию файла(каталога) который не занимает доп. места на харде, но может иметь другое имя и адрес.

Т.к. это всёже ссылка а не копия, то изменение данных сказывается и на оригинале.


Пашкелла предложил сделать 2 ссылки на разных сайтах ссылающихся на 1 каталог, так что адреса сайтов можно использовать любые, если они находятся внутри одной файловой системы.

serg-php 21.10.2009 22:29

Gray_Wolf,

идея хорошая!

Только будет ли она работать на шаред хостинге?

serg-php 21.10.2009 22:32

imajo.ati,

сайт динамический, не представляю как это будет работать со множеством изображений.

Насколько возрастет нагрузка на сервер, чем при традиционных ссылках?

Gray_Wolf 21.10.2009 23:01

Цитата:

Сообщение от serg-php
Gray_Wolf,

идея хорошая!

Только будет ли она работать на шаред хостинге?

Для работы необходимы следующие условия:
1. Линукс на хостинге.
2. Доступ по SSH или возможность выполнения функции system() из PHP.
Т.е. подойдут 95% хостингов.

P.S.: писать по 2 поста подряд здесь запрещено, используйте кнопку Edit.

serg-php 21.10.2009 23:35

Gray_Wolf

а на денвере так сделать можно для тестинга?

gisTy 22.10.2009 00:35

Цитата:

Сообщение от serg-php
Gray_Wolf

а на денвере так сделать можно для тестинга?

под виндоус символические ссылки? можно, если поставить линукс
а вариант пашкелы будет работать при сэйф моде и оупэн бэйсдир?

serg-php 22.10.2009 00:44

Значит, есть 2 варианта:

1) через скрипт;
2) через жесткие ссылки;


Только вот вопрос:

почему конструкция мод_рерайт не пашет

RewriteRule ^images/(.*)$ http://site.com/images/$1 [R,L]

Картинки-то подгружаются, но в их св-вах путь http://site.com/images/

а не http://site2.com/images/


Время: 04:13