| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Администрирование Web серверов и Web служб > mod rewrite поддомен |
| Автор: Aver78 7.4.2015, 15:08 |
| Есть домен auto.domen.ru , есть htaccess RewriteEngine on RewriteRule ^auto\.domen\.ru 2.html [L] такое перенаправление не рабтает, вообще не пойму как выделить поддомен. То есть в теории все ясно, а на парвктике - не работает. перенаправление поддоменов на домен включено, мод реврай стоит и работает. |
| Автор: numerovan 7.4.2015, 21:06 | ||||
| [L] - это команта говорит что как найдется совпадение далее прекратить обработку ... вам нужно R туда еще дописать R=permanent [L,R=permanent]
/2.html - вот тут наверно нужно указать на какой домен редиректить к примеру вот так:
может я чет не понимаю сам, если что объясните по подробней. |
| Автор: Aver78 7.4.2015, 21:13 | ||
Не поленился попробовал, не помогает. К тому же
прекрасно работает |
| Автор: numerovan 7.4.2015, 21:18 |
| Вы хотите чтоб с поддомена auto.domen.ru происходил редирект на другой домен domen.ru. Верно? |
| Автор: Aver78 7.4.2015, 21:20 |
| Нет. Этого я могу добиться просто алиасами, и это настроено уже. Мне нужно получать-передавать имя вызванного поддомена в переменную, в итоге, но для начала я вообще не могу написать правило которое определяло бы что вызван определенный поддомен. |
| Автор: numerovan 7.4.2015, 21:38 | ||
и передавать его на тот же домен или на другой домен? посмотрите решение вот тут http://www.nulled.cc/threads/199857/ если получится, оставьте ответ отпишитесь с решением потом сюда. |
| Автор: Aver78 7.4.2015, 22:30 |
| Да, вопрос именно такой, но вот там ничего не работает из ответов, плюс сильное впечатление что написано криво. |
| Автор: numerovan 8.4.2015, 11:46 |
| и передавать его на тот же домен или на другой домен? |
| Автор: Aver78 8.4.2015, 13:46 |
| Есть домен domen.ru в корне индексный файл который обрабатывает абсолютно все запросы со всех доменов. Есть поддомен auto.domen.ru Надо преобразовывать запрос типа auto.domen.ru/11 в domen.ru/index.php?mod=auto&id=11 Нигде не могу найти нормальную документацию. В куче мест , куча примеров, и все нерабочие. Это вот как так. |
| Автор: numerovan 9.4.2015, 00:18 |
| завтра попробую сделать |
| Автор: numerovan 9.4.2015, 22:50 | ||
вот сделал:
RewriteCond %{HTTP_HOST} !^(www\.)?domen\.ru(.*)$ - если имя домена Не равно "www.domen.ru...", в котором "www." встречается ноль или один раз И RewriteCond %{HTTP_HOST} ^(www\.)?([a-zA-Z0-9-]+)\.domen\.ru(.*)$ - если имя домена начинается с "www." (ноль либо один раз), после следуют симаолы один или более раз из этого набора [a-zA-Z0-9-], потом точка, домен, зона "ru" и потом любое кол-во символов Если эти два условия совподают и так же совпадает по шаблону в RewriteRule, а именно: ([a-zA-Z0-9-]+) прямой слеш и какие-то еще символы ... то передай все это дело на страницу http://domen.ru/index.php?mod=$1&id=$2. В $1 поставь значения из первой скобки, из строчки RewriteRule, в переменную mod (кстати сюда можно поставить еще и %2 вместо $1, там тоже лежит название поддомена). В $2 поставь значения из второй скобки, из строчки RewriteRule, в переменную id (как видно из условия (.*) - пустота либо любой символ). вот и дело в шляпе. Добавлено через 7 минут и 15 секунд Я все допереть не мог: что такое %2. Это оказывается условие %{HTTP_HOST} которое находится во втором RewriteCond. |
| Автор: Aver78 10.4.2015, 08:22 | ||||||
Не работает.
А я все еще не совсем понимаю. %2 это из второго условия, то например вторые скобки из первого - как ? Или это порядковый номер из всех условий ? У меня вроде бы работает - так
Но опять же непонятно, почему
Уже ни фига не работает. Странные здесь регулярки. |
| Автор: numerovan 10.4.2015, 10:33 | ||||
%1 = %{A} %2 = %{B} ------------------------------------------------------------------------ если хотите, свяжитесь со мной, налажу у вас на хосте. |