>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Скрипты http://forum.mozilla-russia.org/viewforum.php?id=37 >Сделать редирект <РЕШЕНО> http://forum.mozilla-russia.org/viewtopic.php?id=67722 |
Ultima2m > 28-06-2015 10:51:55 |
Сейчас многие сайты блокируются провайдером. Причем использование прокси не всегда позволяет обойти блокировку. скрытый текст flibusta.net можно войти через proxy.flibusta.net а на http://nnm-club.me заходим по ipv6.nnm-club.me.ipv4.sixxs.org Помогите сделать скрипт который бы перенаправлял с одного адреса на другой (с сохранением путей) Есть похожий скрипт и вроде рабочий скрытый текст Выделить код Код:// ==UserScript== // @name Redirect to Userscripts-MIRROR // @namespace uso2usom // @description On any web page it will check if the clicked links goes to userscripts.org. If so, the link will be rewritten to point to userscripts-mirror.org // @include http://*.* // @include https://*.* // @exclude http://userscripts.org/* // @exclude https://userscripts.org/* // @exclude http://userscripts.org:8080/* // @exclude https://userscripts.org:8080/* // @version 1 // @grant none // ==/UserScript== // This is a slightly brute force solution, but there is no other way to do it using only a userscript. A full-fledged addon may be created soon. document.body.addEventListener('click', function(e){ var targ = e.target || e.srcElement; if ( targ && targ.href && targ.href.match('https?:\/\/userscripts.org') ) { targ.href = targ.href.replace('://userscripts.org', '://userscripts-mirror.org'); } }); Пробовал его переделать, но не выходит. Не работает, зараза скрытый текст Выделить код Код:// ==UserScript== // @name Редирект Флибуста // @namespace * // @include http://*.* // @include https://*.* // @version 1 // @grant none // ==/UserScript== document.body.addEventListener('click', function(e){ var targ = e.target || e.srcElement; if ( targ && targ.href && targ.href.match('http?:\/\/flibusta.net') ) { targ.href = targ.href.replace('://flibusta.net', '://proxy.flibusta.net'); } }); |
turbot > 28-06-2015 15:24:04 |
Ultima2m скрытый текст Создаем (если нет) в папке профиля браузера папку HTTPSEverywhereUserRules и в ней xml (посто текстовый и переименовываем) файл с правилом для каждого сайта. Например, такое для NNM: Выделить код Код:<ruleset name="(my)NNM-Club"> <target host="nnm-club.me"/> <target host="*.nnm-club.me"/> <target host="nnm-club.ru"/> <target host="*.nnm-club.ru"/> <securecookie host="^(?:.*\.)?nnm-club\.me$" name=".+"/> <rule from="^http(s)?://(www\.|ipv6\.)?nnm-club\.(ru|me)/" to="https://ipv6.nnm-club.me/"/> </ruleset> Для флибусты: Выделить код Код:<ruleset name="(my)flibusta.net"> <target host="flibusta.net"/> <target host="*.flibusta.net"/> <rule from="^http(s)?://(www\.)?flibusta\.net/" to="http://proxy.flibusta.net/"/> </ruleset> |
Ultima2m > 28-06-2015 18:30:39 |
turbot, спасибо. |
turbot > 28-06-2015 21:23:47 |
Ultima2m Выделить код Код:// ==UserScript== // @name Redirect for sites // @namespace dev/null // @include http://*.* // @include https://*.* // @version 1.0 // @grant none // ==/UserScript== document.body.addEventListener('click', function(e){ var targ = e.target || e.srcElement; var site1 = targ && targ.href && targ.href.match(/^https?:\/\/(www\.)?flibusta\.net\//); var site2 = targ && targ.href && targ.href.match(/^https?:\/\/(www\.)?nnm-club\.(ru|me)\//); if (site1) { targ.href = targ.href.replace(/(www\.)?flibusta\.net/, 'proxy.flibusta.net'); } if (site2) { targ.href = targ.href.replace(/(www\.)?nnm-club\.(ru|me)/, 'ipv6.nnm-club.me.ipv4.sixxs.org'); } }); Добавляйте другие сайты в скрипт по образцу. |
Ultima2m > 29-06-2015 08:40:30 |
Спасибо, turbot скрытый текст @exclude http://nnm-club.me/* А то с нормального сайта будет на зеркало перекидывать. |