| 30.06.2009, 11:37 | nes | нужен редирект в хтаццесс с поисковиков только. Блин встречал часто, а щас найти не могу.
И ещё 2ой вариант нужен, редирект именно на папку, что бы хтацесс засунуть в корень, и он редиректил когда пробуют зайти допустим в domen.com/folder
а самого folder дир. не сущесвует. |
| 30.06.2009, 12:01 | mdS | вот например для се
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www.)?google..*[?&]q=([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(search.)?yahoo..*[?&]p=([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(search.)?live..*[?&]q=([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(search.)?msn..*[?&]q=([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(www.)?altavista..*[?&]q=([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(www.)?technorati.com/search/([^&]+)
RewriteRule ^.* <URL> [L]
RewriteCond %{HTTP_REFERER} ^http://(www.)?ask..*[?&]q=([^&]+)
RewriteRule ^.* <URL> [L]
на счет второго не очень понял в чем трабл. |
| 30.06.2009, 15:02 | ziavra | для второго варианта что-то типа
RewriteEngine On
RewriteCond /%{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ index.php?param=$1 [L] |
| 30.06.2009, 15:06 | azgard | RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*aol.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*msn.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*yahoo.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*yandex.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*rambler.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} .*ya.*$ [NC]
RewriteRule .* http://domain.com [R,L] |
| 30.06.2009, 17:45 | Bljat | RewriteEngine On
RewriteCond %{HTTP_REFERER} google|msn|live|altavista|ask|yahoo|aol|bing
RewriteRule ^.*$ http://domen.com [NC,L]
чуток укороченый вариант |
| 17.11.2009, 18:36 | HwoR | Подскажите как вычленить кейворд запроса и вставить его в урл редиректа чтобы на фид с кеем сливать по которому поиск был.. |
| 17.11.2009, 18:59 | HwoR | Можно яваскриптовый аналог) |
| 17.11.2009, 19:18 | Fred | Подскажите как вычленить кейворд запроса и вставить его в урл редиректа чтобы на фид с кеем сливать по которому поиск был..
держи
htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} google.*[\?&]q=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} msn.*[\?&]q=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} live.*[\?&]q=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} altavista.*[\?&]q=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} ask.*[\?&]q=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} yahoo.*[\?&]p=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteCond %{HTTP_REFERER} aol.*[\?&]query=([^&]+)
RewriteRule ^.*$ http://feed.com/search.php?q=%1 [NC,L]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>javascript
function referrer_keyword_parser() {
var patterns =
[
[ /^http:\/\/([a-z]+\.)?google\.(co\.)?[a-z]+/, /q=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?yahoo\.(co\.)?[a-z]+/, /p=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?search\.msn\.(co\.)?[a-z]+/, /q=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?search\.live\.(co\.)?[a-z]+/, /q=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?search\.aol\.(co\.)?[a-z]+/, /q=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?search\.ask\.[a-z]+/, /q=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?search\.lycos\.(co\.)?[a-z]+/, /query=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?digg\.com/, /s=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?rambler\.[a-z]+/, /query=([^&]+)/ ],
[ /^http:\/\/([a-z]+\.)?yandex\.[a-z]+/, /text=([^&]+)/ ]
]
var p;
for ( var k in patterns) {
p = patterns[k]
if (document.referrer.match(p[0])) {
var m = document.referrer.match(p[1]);
if (m.length)
return m[1];
else
break;
}
}
return escape(document.title);
}
alert(referrer_keyword_parser());
(c) daoclickphp
if(preg_match("!google|msn|live|altavista|ask|yahoo|aol|cnn|weath er|alexa!i",$_SERVER['HTTP_REFERER'])){
preg_match("![\?\&]q=([^&]+)|[\?\&]query=([^&]+)|[\?\&]p=([^&]+)|[\?\&]keywords=([^&]+)!i",$_SERVER['HTTP_REFERER'],$m);
foreach($m as $k=>$v) if($k>0 && $v!=""){ $rk=$v; break; }
$rk=($rk!="")?$rk:"123";
header('Location: http://feed.com/search.php?q='.$rk);
exit;
} |
| 17.11.2009, 19:32 | HwoR | Fred, мегареспект! :) |
| 17.11.2009, 23:00 | seroja | Тоже интересен второй результат редиректа
нужно вот такое:
заходим на domain.com/folder1/?q=key
папки folder1 нету и htaccess редиректит
domain.com/?q=key
Тоесть htaccess парсит чуму равер "q" и подставляет его в другое место :) |
| 17.11.2009, 23:03 | Sergyk | А не подскажет кто, почему у меня редирект через htaccess долго обрабатывается, секунд 10 - 15? |
| 17.11.2009, 23:49 | CrazyStudentS_Mi}{ | А не подскажет кто, почему у меня редирект через htaccess долго обрабатывается, секунд 10 - 15?
он обрабатывается на стороне хостинга, копай в оперу..свободное место, сайты сами лагают? |
| 18.11.2009, 01:24 | digg | а гугль разьве не прохавает, что вы по реферу подмену делаете? |
| 18.11.2009, 13:13 | aoki | Подскажите javascript чтоб при заходе на страницу с google или aol был редирект. |
| 20.11.2009, 00:49 | seroja | нужно вот такое:
заходим на domain.com/folder1/?q=key
папки folder1 нету и htaccess редиректит
domain.com/?q=key
Тоесть htaccess парсит чуму равер "q" и подставляет его в другое место :)
апну
Мож кто поможет? |
Работает на vBulletin® версия 3.8.6. Copyright ©2000-2011, Jelsoft Enterprises Ltd. Перевод: zCarot
|