LINUX.ORG.RU

Прошу помощи по htaccess

 , ,


0

1

Приветствую гуру!

Столкнулся с одной проблемой.

Есть два домена, первый находится по адресу /home/user/domains/first.ru/public_html

второй по адресу /home/user/domains/second.ru/public_html

С first.ru на second.ru идет редирект 301:

RewriteEngine On

RewriteCond %{REQUEST_URI} !^/folder1/

RewriteCond %{REQUEST_URI} !^/folder2/

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

Как мы видим, мы хотим, чтоб нас перенаправляли на second.ru с first.ru, если в адресе не указана папка folder1 или folder2.

Такой пример прекрасно работает.

Понадобилось на folder2 поставить пароль.

Поставил стандартными средствами панелью управления хостингом DirectAdmin.

В папке second.ru сформировался файл .htaccess со следующим содержанием:

AuthGroupFile /dev/null

AuthType Basic

AuthUserFile /home/user/domains/second.ru/.htpasswd/public_html/folder2/.htpasswd

AuthName «Hello world!»

require valid-user

AuthType Basic

Всё вроде хорошо, но при запуске происходит редирект на second.ru с оговоркой:

Authorization Required

This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.

На second.ru есть такая же папка, но в ней ничего нет, так как я перенес содержимое к домену first.ru из-за этой же проблемы!!!

По сути редирект нужен для склейки доменов, чтоб second.ru считался поисковиками главным/основным!

На домене second.ru тоже есть файл .htaccess со следующим содержанием:

AddDefaultCharset utf-8

php_value default_charset utf-8

RewriteEngine on

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_URI} !(.*)/$

RewriteRule ^(.*[^/])$ $1/ [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/

RewriteRule ^index.(php|html|htm)$ http://second.ru/ [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?third.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?fourth.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?fifth.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?sixth.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?seventh.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^http://www.second\.ru$ [NC]

RewriteRule ^(.*)$ http://second.ru/$1 [R=301,L]

RewriteRule ^([method]+)/?$ http://m.second.ru/ [R=301,L]

RewriteRule ^([method]+)/([admin]+)/?$ http://m.second.ru/admin/ [R=301,L]

RewriteRule ^([likes]+)/?$ /$1/index.php [NC]

RewriteRule ^([as]+)/?$ /$1/index.php [NC]

RewriteRule ^([to]+)/?$ /$1/index.php [NC]

#RewriteRule ^([go]+)/?$ /$1/index.html [NC]

RewriteRule ^([subdomain1]+)/?$ http://subdomain1.second.ru/index.php [NC]

#RewriteRule ^([subdomain2]+)/?$ http://subdomain2.second.ru/index.html [NC]

RewriteRule ^([a-z]+)/?$ ?moduls=$1 [NC]

RewriteRule ^([a-z]+)/([0-9]+)/?$ ?moduls=$1&id=$2 [NC]

RewriteRule ^([gallery]+)/([a-z0-9]+)/?$ ?moduls=$1&id=$2 [NC]

RewriteRule ^([comment]+)/([-0-9]+)/?$ ?moduls=$1&id=$2 [NC]

RewriteRule ^([tech]+)/([-0-9]+)/?$ ?moduls=$1&id=$2 [NC]

###

Это ЧПУ, переадресация с www на без www, добавление слэша в конце адресной строки если отсутствует и т.д.

Почему происходит конфликт???

Комментирую require valid-user

#require valid-user

...работает, но не авторизовывает (это понятно)

убираю редирект который находится в корне, тогда работает авторизация, но не происходит редирект если просто набрать first.ru!!!

Поясните пожалуйста, что за проблема?

И как её решить мирным путем =)

Спасибо!

scooterok Сообщений: 1 Зарегистрирован: Пт авг 15, 2014 11:50 pm Благодарил (а): 0 раз. Поблагодарили: 0 раз. Пункты репутации: 0



Последнее исправление: scooterok (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.