Показать полную графическую версию : Условный редирект в .htaccess
Такой вопрос, как в файле .htaccess сделать перенаправление при переходе на страницу с другого ресурса, а со своего оставить
вопрос неполный, но принцип состоит в проверке HTTP_REFERER, который юзер может изменить или отключить... те 100% способа не существует...
RewriteEngine on
RewriteCond %{HTTP_REFERER} !%{HTTP_HOST}
RewriteRule . http://redirect_url.ru [R]
ну вообщем перенаправлять на другую страницу при переходе с другого сайта, а при переходе со страниц этого же сайта пропускать
поскольку htaccess обрабатывается при любом запросе в каталог, то нужно разделить запросы на картинки/файлы и странички. Внизу указан список расширений, запросы на которые перенаправляются...
RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !%{HTTP_HOST}
RewriteRule \.(html?|php|phtml|pl)$ http://redirect_url.ru [R]
попробую на примере:
тоесть есть сайт www.site.ru , есть файл www.site.ru/file.rar, при обращении к этому файлу со страницы www.site.ru/страница.html редирект не нужен а скажем с сайта www.other_site.ru нужен редирект на страницу www.site.ru, тут конкретно с одного сервера редирект нужен а с остальных нет, а еще как вариант что редирект нужен при обращении к файлу со всех сайтов кроме своего
расширения там добавьте какие нужно через "|" (или удалите лишние)...
извиняюсь за назойливость, так будет правильно для моего примера?
RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://www.other_site.ru
RewriteCond %{HTTP_REFERER} !%{HTTP_HOST}
RewriteRule \.(rar)$ http://www.site.ru [R]
RewriteEngine on
# проверка наличия заголовка, и что это похоже на УРЛ
# если наличие REFERER обязательно, то 1 строка не нужна
RewriteCond %{HTTP_REFERER} ^http://
# сравнение заголовков
RewriteCond %{HTTP_REFERER} !%{HTTP_HOST}
# в данном случае, если расширение одно, то скобки не нужны
RewriteRule \.rar$ http://www.site.ru [R]
спасибо, все гуд
а где можно найти полный фак по этому файлу?
можно тут (http://www.iho.ru/faq/manual/htaccess.html#Redirect)
или тут (http://www.opennet.ru/base/faq/htaccess_howto.txt.html)
или еще тут (http://webdesign.site3k.net/?/docs/htaccess.html)
и т.д. :smirk:
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.