Поиск:

Ответ в темуСоздание новой темы Создание опроса
> htaccess помощь в создании правила 
:(
    Опции темы
Frozen_Coyote
Дата 23.8.2015, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



привет!

ребята, помогите правило одно создать, не могу допереть

смысл

мне необходимы два правила.

1. Работает правильно и корректно. Его смысл - если человек вводит в адресной строке название сайта С www - редиректить его на наш сайт но БЕЗ www

2. Тут затык случился, не работает. Смысл - если человек заходит на стартовую страницу www.mydomain.ru или mydomain.ru - чтобы его всегда редиректило на http://mydomain.ru/ru/ Интересно решение с регуляркой какой то, чтобы имя домена не было явно прописано

Код


#1.
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

#2. не работает ((
RewriteCond %{HTTP_HOST} ^http://(.*) [NC]
RewriteRule ^(.*)$ http://%1/ru/ [R=301,L]





Код


RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]


PM MAIL   Вверх
_zorn_
Дата 24.8.2015, 04:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: 1
Всего: 12



А если не конопатить мозги и положить индекс.хтмл с содержимым 
Цитата
<meta http-equiv="refresh" content="0; url=ru">

???

Цитата
У тебя есть проблема. Ты восклицаешь "я решу эту проблему с помощью регулярных выражений !"
Теперь у тебя две проблемы.

PM MAIL   Вверх
ИшТы
Дата 10.1.2016, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 8.11.2014

Репутация: нет
Всего: нет



Переменная %{HTTP_HOST} как раз и является именем хоста, а http(s) - это schema, все что идет после имени хоста - REQUEST_URI. То есть Ваш адрес выглядит следующим образом:
%{SCHEME}://%{HTTP_HOST}%{REQUEST_URI}

В случае с http://www.mydomain.ru/имя_страницы
http - %{SCHEME}
www.mydomain.ru - %{HTTP_HOST}
/имя_страницы - %{REQUEST_URI}

Вообще использование переменной SCHEME может не всегда отстреливать.

Следующее регулярное выражение не должно возвращать ничего, поскольку http:// не входит в HTTP_HOST
Код

RewriteCond %{HTTP_HOST} ^http://(.*) [NC]


Дальше смотрите сами.
PM MAIL   Вверх
EvgenAll
Дата 17.3.2016, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 17.3.2016
Где: Москва

Репутация: нет
Всего: нет



Думаю правильно будет так:
1. Два обязательных параметра в файле htaccess
Options +FollowSymLinks
RewriteEngine On

2. Само правило должно выглядеть так:
RewriteCond %{HTTP_HOST} ^www.mydomain\.ru$ [NC]
RewriteRule ^(.*)$ http://mydomain.ru/$1 [R=301,L]
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0987 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.