.htaccess и его заморочки

A2
На сайте с 04.09.2016
Offline
0
402

Здравствуйте уважаемые форумчане и специалисты программирования. Помогите решить задачку, если она вообще решаема:

Есть сайт domain.com, установлена СМS, в корне есть .htaccess

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_USER_AGENT} ^.*internal\ dummy\ connection.*$ [NC]
RewriteRule .* - [F,L]

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

RewriteCond %{HTTP_HOST} ^subname\.domain.com$ [NC]
RewriteCond %{REQUEST_URI} !subname/
RewriteRule ^(.*)$ subname/$1

RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

То есть у domain.com есть поддомен subname.domain.com и с помощью .htaccess при запросе этого поддомена открывается содержимое domain.com/subname (папка находится в корне сайта).

В папку /subname установлена отдельная CMS, там также имеется свой .htaccess


RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_USER_AGENT} ^.*internal\ dummy\ connection.*$ [NC]
RewriteRule .* - [F,L]

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

RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

У сайта subname.domain.com сейчас есть дубли страниц:

  • domain.com/subname
  • subname.domain.com/subname

Т.Е. один сайт открывается по трем ссылкам. Убрать эти дубли с помощью редиректа в .htaccess не получается. Стандартные методы приводят к зацикленному, бесконечному редиректу:

Так как subname.domain.com открывает содержимое domain.com/subname

  • → subname.domain.com/subname невозможно переадресовать на subname.domain.com, потому что последнее изначально переадресовано на /subname
  • → убрать дубль domain.com/subname путем редиректа на subname.domain.com/ невозможно, так как последний изначально ссылается на первый

Основной url сайта subname.domain.com определяется как subname.domain.com/subname, возможно из-за того что именно в папку /subname установлена СМS → все страницы сайта на поддомене, открываются исключительно как subname.domain.com/subname/.../.../

Нужно найти решение:

  • Убрать дубли страниц
  • Убрать /subname из URI всех страниц сайта:
  • subname.domain.com/subname
    subname.domain.com/subname/page
    subname.domain.com/subname/page1/page2

Кто что знает, помогите PLEASE

SeVlad
На сайте с 03.11.2008
Offline
1609
#1
adon2552:
Кто что знает, помогите PLEASE

1. Внести ФИЗИЧЕСКИ поддомен из каталога сайта домена.

Кури топик /ru/forum/880402 до конца.

2. Не орать и не гадить жирным в топике. Не нарушать 3,8 правил форума.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий