Программирование > Perl

строка с условиями на perl

<< < (2/3) > >>

hr1:
to arto

пункт 2 и 3

проверяется строка ссылки (запроса страницы)
если домен первого уровня не совпадает с с названием основного сайта, то в строке меняется ТОЛЬКО название сайта

например
www.site-111.ru -> www.site111.ru
www.site111.com -> www.site111.ru
zite111.ru -> site111.ru или www.site111.ru
www.s111.ru/user/aa -> www.site111.ru/user/aa

где site111.ru - основной сайт
а zite111.ru , s111.ru, site111.com - алиасы, то есть по этим названиям люди все равно попадают на сайт site111.ru
К сожалению в строке браузера остается именно то что они набрали...
вот и нужен редирект на основной сайт site111.ru что и пытаюсь сделать в алгоритме в пунктах 2 и 3

Yaroslav:

--- Цитировать ---hr1:
1. Проверка HTTP_HOST
2. Если адрес %1.site111.ru/%2 перейти на пункт 4
3. Заменить ссылку на %1.site111.ru/%2
4. Если %1=""(пустой) или %1="www" перейти пункт 6
5. Заменить ссылку на site111.ru/%1
6. конец :)
--- Конец цитаты ---

надеюсь мой пример тебе поможет:-)

--- Код: ---$host="www.anton.site111.ru/user/aa";
$host =~ s/www.//;
if ($host =~ /(.*\\.)?site111.ru(.*)?/) {
  if ($1) { print $1; }
  if ($2) { print $2; }
}
--- Конец кода ---

hr1:
не работает
а как все это можно одной строкой написать?

Yaroslav:

--- Цитировать ---hr1:
не работает
--- Конец цитаты ---

оно и не будет работать в .htaccess :-)
там Перл не уместен :)

hr1:
зато там уместно "выражение" на перл :)
Perl regular expressions
http://perldoc.perl.org/perlre.html
на основе которого и производится проверка строки и замещение символов

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии