IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   Склейка доменов(+) (http://www.imho.ws/showthread.php?t=77577)

Sheryld 14.01.2005 10:28

Склейка доменов(+)
 
Собственно два вопроса.

1. как склеить все домены кроме тем, которые нужны.

я делаю так:

Код:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.site\.ru
RewriteRule ^.*$ http://www.site.ru%{REQUEST_URI} [R=301,L]

но мне нужно, чтобы скажем домен: ads.site.ru не ридеректился.

2. Как сделать это по всему сайту. У меня в некоторых папках есть свои .htaccess. Я делаю наследование, но неудобно прописывать в каждый директиву наследования. Доступа к access.conf нету:(

RaZEr 14.01.2005 11:34

Если те поддомены, что ненадо перенаправлять физически имеют путь docroot/subdomain, то можно проверять существование директории поддомена, и в случае отсутствия - перенаправлять.

Sheryld 14.01.2005 12:25

а те которые физически - там без проблем. т.к. в их директории нету .htaccess с этими инструкциями.

проблема только в виртуальных. т.е. за одной директорией несколько поддоменов, пример:

www.site.ru
new.site.ru
old.site.ru

/docroot/site.ru/

p.s. не хотелось бы их просто убивать, т.к. на них ходит народ.

RaZEr 14.01.2005 12:34

Если есть четкий список поддоменов которые нужны, то просто пропиши их в кондишен ... (one|two|three)

Sheryld 14.01.2005 12:41

аааа, условие "или" это "|", значит "и" - "&"?

я ставил так:

Код:

RewriteCond %{HTTP_HOST} !^www\.site\.ru ||  !^domain\.site\.ru
- но не работало

RaZEr 14.01.2005 12:46

Пфф. понятно что не работало.

RewriteCond %{HTTP_HOST} !^(one|two|three)\.site\.ru

Sheryld 19.01.2005 11:10

второй пункт остался без внимания. возможно ли сделать глобальную склейку через .htaccess?

т.е. куда бы не зашел пользователь, сразу бы срабатывал редирект. причем, учитывая, что на сервере есть физические и виртуальные директории, со своими .htaccess.

я прописал в docroot/www правило. а во всех выщестоящих .htacess добавляю наследование: RewriteOptions inherit.

но так делать очень не удобно, т.к. надо править много файлов. возможно ли сделать это в одном месте для всего сайта?

p.s. доступа к httpd.conf и иже с ним не имею:(

RaZEr 19.01.2005 11:25

Приведи пример. Так не оченть понятно.

Sheryld 19.01.2005 12:53

/docroot/www/.htaccess:

Код:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.site\.ru
RewriteRule ^.*$ http://www.site.ru%{REQUEST_URI} [R=301,L]

/docroot/www/catalog/.htaccess:

Код:

RewriteEngine on
RewriteOptions inherit #наследование

#далее идут правила только для каталога
RewriteBase /catalog/
RewriteRule ...
RewriteRule ...

не хотелось бы добавлять во все .htacess
Код:

RewriteOptions inherit
хотелось бы правило из корневого каталога .htaccess распрастранить на все вложенные каталоги, но с сохранением специфичных опций для всех каталогов(если таковые указаны).

Nolex 29.06.2005 20:21

извеняюсь, но я не понял.
как зделать чтоб www.site.com был site.com
а то PR(www.site.com)=5, a PR(site.com)=2
Заранее спасибо! :))

RaZEr 29.06.2005 20:50

ServerAlias

rengen 13.11.2005 13:56

а для яндекса есть команда host куда пишешь имя основного домена, прописывать команду надо в robots.txt подробнее можно узнать в помощи для веб-мастеров на самом яндексе.

Sheryld 13.11.2005 21:15

User-Agent: *
Host: your primary domain


Часовой пояс GMT +4, время: 19:40.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.