Обновление компонента "Редирект и скачивание" для 1.10.6 1.X

72451
Данный пост навеян этой темой а так же другими личными обращениями с подобными проблемами. Поэтому, чтобы всем лично не объяснять, написан этот пост. Данное решение сделано уже давно и будет в 1.10.7.

Итак, что будет после обновления

Все внешние ссылки, которые идут через /go/url= а так же через /load/url= будут предварительно редиректить на внутреннюю страницу сайта, где уже по таймеру, с предупреждением об опасности, будет js редирект.
Вся страница редиректа обрамлена в noindex, сама внешняя ссылка в rel="nofollow" - так что любители seo пусть порадуются, ну или покритикуют smile . Пожелания и предложения выслушаю.
Особенностью этого обновления является так же то, что при наличии на хостинге поддержки CURL, все внешние ссылки предварительно проверяются посредством открытого метода Вконтакте по проверке ссылок. Кроме этого, этот метод проверки разыменовывает ссылку, если она была сформирована через сервис сокращения ссылок.

Обновление компонента \"Редирект и скачивание\" для 1.10.6
Обновление компонента \"Редирект и скачивание\" для 1.10.6
Обновление компонента \"Редирект и скачивание\" для 1.10.6

Скачать

Порядок установки:

1. Бекап участвующих файлов
2. Содержимое архива распаковать с заменой

Приятного использования!
Логирование авторизаций | Микроформат Open Graph
Комментарии (45)
nmsk 18 марта 2015 в 11:26 +2
small user social cms
Хорошее дополнение. v
garry 18 марта 2015 в 11:27 +1
small user social cms
Штука очень полезная во всех смыслах...
Но я бы дополнил, что стоит обязательно закрыть в robots.txt во всех блоках если есть такие для разных поисковиков или один у вас, но в таком формате (только как пример)

Disallow: /go/
Disallow: /load/

Тогда боты просто не будут туда лазить.
Stecc 18 марта 2015 в 11:52 0
small user social cms
Disallow: /load/
load за что отвечает?
Stecc 18 марта 2015 в 11:52 0
small user social cms
Т.е. получается теперь все ссылки внешние будут закрыты в noindex?
Если да, давно ждал такое дополнение.
+++
Stecc 18 марта 2015 в 12:25 0
small user social cms
Не могу понять, а как он определяет подозрительный сайт?
Как сделать чтобы выводилось страница как на первом скрине?

А то получается достойные сайты он не открывает, и относит их к подозрительным.
Fuze 18 марта 2015 в 12:29 0
small user social cms
как он определяет подозрительный сайт
Fuze:
все внешние ссылки предварительно проверяются посредством открытого метода Вконтакте по проверке ссылок
Как сделать чтобы выводилось страница как на первом скрине?
если ссылка нормальная, то будет как на первом скрине
Stecc 18 марта 2015 в 13:12 0
small user social cms
Это один из самых крупных сео форумов в СНГ.
Это получается он заблокирован в вконтакте? из-за этого считается он подозрительным?

Может можно это как-то убрать?
А заблокировать сам ВК laugh
Fuze 18 марта 2015 в 13:20 +1
small user social cms
Вы прочитали по ссылке https://vk.com/dev/utils.checkLink как проверяется? Не я проверяю и не компонент.
Это один из самых крупных сео форумов в СНГ.
Какой? Я проверил сейчас топ5 - никто не заблокирован.
Можете проверку ссылок убрать в коде, это никто не запрещает делать.
В идеале бы конечно добавить опцию проверять/не проверять, белый список. Но это уже в другой раз.
Stecc 18 марта 2015 в 13:23 0
small user social cms
maultalk блокирует.
А как убрать проверку ссылок? не подскажите?
Fuze 18 марта 2015 в 13:33 +4
small user social cms
обновлю архив, сделаю проверку отключаемую и вайтлист, ожидайте.
Stecc 18 марта 2015 в 13:34 0
small user social cms
Спасибо большое. smile
Stecc 18 марта 2015 в 13:35 0
small user social cms
Ждем. Очень нужный компонент.
alekcandr 18 марта 2015 в 13:29 0
small user social cms
Спасибо решение отличное!!! Скорее бы уже 1.10.7 вышла.
Stecc 18 марта 2015 в 13:32 0
small user social cms
И ссылка вернуться назад не работает если сайт подозрительный.
Хотя по логике она и не должна работать, т.к. страницы открываются в новом окне.
Тогда зачем она там?
Stecc 18 марта 2015 в 13:33 0
small user social cms
И ссылка отмена также если сайт нормальный.
Fuze 18 марта 2015 в 13:38 +2
small user social cms
И ссылка вернуться назад не работает если сайт подозрительный.
Этот патч выдержка из 1.10.7. Чтобы ссылки не открывались теперь в новом окне, нужно в /includes/bbcode/bbcode.lib.php блок
Код PHP:
  1. '#<a href="/go/url=([^"]+)"#',
  2. '$matches',
  3. 'if (!strstr($matches[1], $_SERVER[\'HTTP_HOST\'])){ return "<a target=\"_blank\" title=\"".htmlspecialchars($matches[1])."\" href=\"/go/url=-".base64_encode($matches[1])."\""; } else { return "<a href=\"".htmlspecialchars($matches[1])."\""; }'
  4. ),
  5. $text
  6. );
заменить на
Код PHP:
  1. '#<a href="/go/url=([^"]+)"#', create_function(
  2. '$matches', 'if (!strstr($matches[1], $_SERVER[\'HTTP_HOST\'])){ return "<a rel=\"nofollow\" title=\"".htmlspecialchars($matches[1])."\" href=\"/go/url=-".base64_encode($matches[1])."\""; } else { return "<a href=\"".htmlspecialchars($matches[1])."\""; }'
  3. ), $text
  4. );
Stecc 18 марта 2015 в 13:43 0
small user social cms
Спасибо.
Подожду обновления архива, чтобы сразу все перезалить. smile
Fuze 18 марта 2015 в 14:45 +3
small user social cms
Архив обновлен, добавлены опции, см. третий скрин
Keep 19 марта 2015 в 04:18 0
small user social cms
Подскажите пожалуйста, а на версии 1.10.5 этот компонент будет работать?
Просто есть несколько сайтов которые не будут обновляться с 1.10.5, а компонент такой очень нужен.
Fuze 19 марта 2015 в 09:06 +1
small user social cms
Будет, только в шаблоне все в что в теге <script type="text/javascript"> нужно обернуть в {literal}
Alekskrug 19 марта 2015 в 08:29 0
small user social cms
Глупый вопрос, а где сам компонент?
Если это обновление
Fuze 19 марта 2015 в 09:07 0
small user social cms
В комплекте InstantCMS. Только в админке он не имеет настроек. Все ссылки типа /go/url= и /load/url= обслуживает именно он.
Alekskrug 19 марта 2015 в 13:08 0
small user social cms
У меня почему то он не работает выкидывает 404 ошибку
и ссылка выглядит вот так http://alekskrug.ru/go/url=http://www.rshb.ru
Можно проверьте здесь
как можно исправить эту ошибку, а в статьях переходит сразу без редиректа
Можно проверьте здесь
Max 19 марта 2015 в 15:59 +1
small user social cms
Спасибо.
almond 19 марта 2015 в 15:59 +3
small user social cms
Было бы неплохо добавить еще и черный список доменов, переход по ссылкам на которые был бы невозможен.
Петрмаг 19 марта 2015 в 21:14 0
small user social cms
Вот был бы класс!
Upliner 20 марта 2015 в 13:55 +1
small user social cms
"Маленький шаг для Fuze, но очередной CEO прыжок для ICMS! v
Благодарю за дополнение. Давно хотелось иметь возможность промежуточной страницы при уходе юзеров по ссылкам.
Так же радует, что это официальное дополнение в системе.
Кирилл Эдуардович (Странник) 20 марта 2015 в 14:01 0
small user social cms
Удачи Вам, мистер Аплайнер.
*тоже с серьезным видом*
Clear 20 марта 2015 в 21:02 0
small user social cms
а если я делаю в статьях ссылку на продвигаемый сайт, как тут быть, мне например она нужна и должна передавать вес нормально. Или я на сайте пишу статьи для биржи вечных ссылок ГГЛ, Так никто же не будет заказывать статьи на таком сайте. Как эта ссылка будет работать в разных компонентах? Одинаково для статей и блогов ?
Kreator 21 марта 2015 в 19:29 0
small user social cms
Ссылки с таких статей нужно добавить в белый список
nmsk 21 марта 2015 в 14:57 0
small user social cms
Я как пользователь icms 2, немного завидую пользователям icms 1, с тем что у вас значительно больше возможностей, функций, дополнений для реализации своих сайтов... cry
Zau4man 14 июля 2015 в 10:05 0
small user social cms
Поставил на свой сайт.
Чтобы ссылки не открывались теперь в новом окне, нужно в /includes/bbcode/bbcode.lib.php блок
это же плохо. Юзер уходит с сайта и может не вернуться. В старом способе сайт по ссылке открывался в новом окне...
Zau4man 14 июля 2015 в 14:00 0
small user social cms
В общем, убрал правки из архива, убирающие открывание внешних ссылок в новом окне - раз.
В языковом файле убрал ссылку history.back и заменил ее на фразу закройте страницу.

Имхо, внешняя ссылка должна открываться в новом окне, чтобы юзер, после ее просмотра, мог вернуться к обсуждению на сайте.
Helg 14 июля 2015 в 11:10 0
small user social cms
Там бы еще возможность встраивания и просмотра рекламы добавить, пока таймер срабатывает. По типу, как на ФО сделано. Пусть просматривают)))
Zau4man 17 сентября 2015 в 14:17 0
small user social cms
Так. А где поправить, чтобы параметры ссылки не обрезались при переходе?

Вставил ссылку так http:// сайт .ru/viewtopic.php?f=513&t=6853
На странице редиректа ссылка превратилась в
http:// сайт .ru/viewtopic.php?f=513

Ну и соответственно, тема форума не найдена...
classics 7 февраля 2016 в 01:20 0
no avatar
А для версии 1.9 можно такое решение? чтобы всё что в /go/url редиректило сначала на внутреннюю страницу, и таймер не нужен, пусть пользователь сам нажимает на ссылку чтобы перейти на внешнюю ссылку.
Данила 27 марта 2016 в 19:22 0
small user social cms
А как вообще редирект в блогах убрать на 1.10.6??? Помогите пожалуйста!!
Fuze 27 марта 2016 в 19:31 0
small user social cms
Видимо не вставлять внешние ссылки. Вопрос непонятен.
fotpod 12 июня 2016 в 16:58 +1
small user social cms
Подскажите, а для 1.10.1 кто нибудь делал такое? Просто очень-очень нужно((
Azura 13 июня 2016 в 12:33 0
small user social cms
Шикарно! *_* Давно хотела эту функцию!
alpik 15 июня 2016 в 15:38 0
small user social cms
Будет ли работать на версии 1.10.2?
Fuze 15 июня 2016 в 16:54 0
small user social cms
Я не проверял, попробуйте. Вероятно будет, а если нет, то исправить нужно будет совсем немного.
alpik 16 июня 2016 в 08:39 0
small user social cms
Подскажите пожалуйста что подправить, очень уж необходимо решение внедрить
alpik 16 июня 2016 в 08:57 0
small user social cms
Содержимое архива распаковал с заменой, в шаблоне все в что в теге <script type="text/javascript"> обернул в {literal}
= > в итоге ошибка HTTP ERROR 500 , похоже еще где-то надо править...
yury 30 июня 2016 в 08:30 0
no avatar
в компоненте мапс он действует?