Замена ссылок с сайта

Discussion in 'Актуально, только не в тему' started by leored, Jan 7, 2009.

  1. Offline

    leored Недавно здесь

    Joined:
    Sep 19, 2008
    Messages:
    6
    Likes Received:
    0
    Gender:
    Male
    На сайте www.xdota.ru расположен врапер. Страница рассположения врапера

    Мне требуется, чтобы посетители не могли уйти ссайта по трем ссылкам

    -Таланты
    -Надпись ВОВ
    -Левый рисунок

    Для этого хочу заменить эти ссылки.

    1) Как мне это сделать?
    2) Существует аналог врапера с контролем внешних ссылок?

    У меня joomla 1.0.15
     
  2.  
  3. OlegM
    Offline

    OlegM Russian Joomla! Team Staff Member

    Joined:
    Apr 12, 2007
    Messages:
    4,310
    Likes Received:
    375
    Gender:
    Male
    1. Никак
    2. Нет

    Ты не можешь контроллировать внешний сайт
     
  4. Fanamura
    Offline

    Fanamura Доброта

    Joined:
    Mar 12, 2007
    Messages:
    5,094
    Likes Received:
    158
    Gender:
    Male
    sourpuss, можно! Но придется написать компонент, в чем суть. Используем функции php, а в частности:

    $content = file_get_contents ('ссылка на страницу'); //считываем всю информацию
    идем сюда: http://pranivpro.narod.ru/PHP/string.htm
    нам понадобится Замена в строке.
    $content = str_replace ("это", "заменить на это", $content); // вставляем код, что нужно вырезать в "это", а "заменить на это" делаем так ""
    echo $content ; //выводим результат

    Получаем своеобразный граббер с подменой данных.
     
  5. Offline

    leored Недавно здесь

    Joined:
    Sep 19, 2008
    Messages:
    6
    Likes Received:
    0
    Gender:
    Male
    Спасибо, я думаю что мне будет очень тяжело реализовать этот компонент |H|

    Чтож, придется разбираться, так как я никогда раньше не писал компоненты.

    А возможно, используя .HTACCESS реализовать этот редирект?
     
  6. Fanamura
    Offline

    Fanamura Доброта

    Joined:
    Mar 12, 2007
    Messages:
    5,094
    Likes Received:
    158
    Gender:
    Male
    leored, нет, нельзя
     
  7. doctorgrif
    Offline

    doctorgrif Местный => Cпециалист <=

    Joined:
    Jan 14, 2008
    Messages:
    1,284
    Likes Received:
    66
    Gender:
    Male
    теоретически, конечно можно, прописав безусловный редирект с данных ссылок на целевые страницы сайта
    но если переход по означенным ссылкам нужен для вывода определенного контента, то он будет утерян
    Условно
    Код (CODE):
    1. RedirectMatch /(.*)/(.*)/index.html$ http://mysite.ru/куда перенаправляем

    */(.*)/(.*)/index.html$ - что перенаправляем
    либо, что, скорее всего, более культурно будет выглядеть:
    Предположим что есть чудесные страницы на удалённых хостах и мы хотим внести их в наше пространство имен(сайт). Для FTP серверов мы бы использовали программу зеркало которая в действительности управляет обновлениями копий удалённых данных на локальной машине. Для веб-сервера мы могли бы использовать программу webcopy которая делает похожие вещи по HTTP. Однако обе эти технологии имеют один главный недостток: локальная копия актуальна всегда настолько, насколько часто мы запускаем эту программу. Было бы намного лучше если бы зеркало было не статическим должно быть полное соответствие копий, вне зависимости от частоты запуска этой программы. Вместо этого мы хотим динамическое зеркало с автоматическим обновлением данных когда это необходимо (обновление данных на удаленном сервере).
    Для обеспечения этой функции мы отобразим удаленную страницу или даже полностью удаленный сайт в наше веб-пространство используя Proxy Throughput опцию ( флаг [P]):
    Код (CODE):
    1. RewriteEngine on
    2. RewriteBase /~quux/
    3. RewriteRule ^hotsheet/(.*)$ http://www.tstimpreso.com/hotsheet/$1 [P]
    4. RewriteEngine on
    5. RewriteBase /~quux/
    6. RewriteRule ^usa-news\.html$ http://www.quux-corp.com/news/index.html [P]

    либо вот:
    Но фиг его знает, про то ли я говорю:)
     
  8. infoman
    Offline

    infoman Пользователь

    Joined:
    Aug 28, 2007
    Messages:
    581
    Likes Received:
    12
    Gender:
    Male
    ээээ....й
    doctorgrif,

    негрузи народные массы :)
    Fanamura, прав

    грузим контент заменяем домен сайта на свой домен и путь к той странице на которой лежит варпер
    далее
    остатки ссылки зашифровываем в base64 с учётом / их меняем на _
    выводим страницу с сылками вида /мойдомен/страница варпера/lnk,PBYgTC6......(это типа зашифрованная ссылка точнее её хвост ввиде base 64)/
    далее естественно что тот грабер должен ловить параметр GET (lnk) расшифровывать его делать запрос к расшифрованному url и сновы резать ссылки если таковые имеются в контенте
    .....
    всём всё понятно? :)
     
  9. infoman
    Offline

    infoman Пользователь

    Joined:
    Aug 28, 2007
    Messages:
    581
    Likes Received:
    12
    Gender:
    Male
    думаю лучше сделать бот
     
  10. infoman
    Offline

    infoman Пользователь

    Joined:
    Aug 28, 2007
    Messages:
    581
    Likes Received:
    12
    Gender:
    Male
    вызывать его командой {graberbot: URL }....
     
  11. doctorgrif
    Offline

    doctorgrif Местный => Cпециалист <=

    Joined:
    Jan 14, 2008
    Messages:
    1,284
    Likes Received:
    66
    Gender:
    Male
    я не оспариваю правоту Fanamura, однако, небольшая мозговая встряска полезна для профилактики болезни Альцгеймера :)
     
  12. Offline

    leored Недавно здесь

    Joined:
    Sep 19, 2008
    Messages:
    6
    Likes Received:
    0
    Gender:
    Male
    Код (CODE):
    1. RedirectMatch /(.*)/(.*)/index.html$ http://mysite.ru/куда перенаправляем


    Этот код перенаправляет с файла индекс на определенный сайт

    Код (CODE):
    1. RewriteEngine on
    2. RewriteBase /~quux/
    3. RewriteRule ^hotsheet/(.*)$ http://www.tstimpreso.com/hotsheet/$1 [P]
    4. RewriteEngine on
    5. RewriteBase /~quux/
    6. RewriteRule ^usa-news\.html$ http://www.quux-corp.com/news/index.html


    Здесь два кода перенаправления, несвязанные друг с другом. И вообще не понятно как ими пользоваться.


    Код (CODE):
    1. RewriteCond %{REQUEST_FILENAME} !-s
    2. RewriteRule ^page\.html$ page.cgi [T=application/x-httpd-cgi,L]


    Этот походу с файлов html на скрипт

    Я думаю тут нет ответа.

    Код (CODE):
    1. Как мне с внешней ссылки
    2. http://www.wow-europe.com/ru/info/basics/talents/index.html
    3. перейти, допусти, на
    4. http://xdota.ru/


    Я думаю предложенные выше версии не помогут.

    Надо еще рассматреть версии с присваиванием внешних ссылок сайту. Идея очень хорошая.

    А вот про бот было бы отлично. Тока как его написать, я не вкуриваю.
     
  13. infoman
    Offline

    infoman Пользователь

    Joined:
    Aug 28, 2007
    Messages:
    581
    Likes Received:
    12
    Gender:
    Male
    учи пхп
    для примера бери боты группы контент
     
  14. Offline

    leored Недавно здесь

    Joined:
    Sep 19, 2008
    Messages:
    6
    Likes Received:
    0
    Gender:
    Male
    файл .htaccess
    Код (CODE):
    1. SetEnvIfNoCase Referer "^http://www.xdota.ru" local_ref=1
    2. SetEnvIfNoCase Referer "^http://xdota.ru" local_ref=1
    3. <FilesMatch ".(gif|jpg)>
    4. Order Allow,Deny
    5. Allow from env=local_ref
    6. </FilesMatch>



    Если это вставить на свой сайт, то картинки с моего сайта не будут открываться на другом.

    Есть идея, как-то переделать этот код или найти подобный.

    Потихоньку продвигаюсь к цели...
     

Share This Page

Loading...