Запрет разделов к индексации и mod_rewrite

123
LD
На сайте с 12.06.2002
Offline
71
#11
Вопрос в том, следует ли запрещать к индексированию динамические страницы?

Если они уже есть в базе поисковиков и они в базе поисковиков Вам не нужны -- то, как я понимаю из всего вышеизложенного, стоит.

делать абсолютные неудобно...

В таких как раз случаях -- очень удобно :)

как их изменить, если мне надо, чтобы при запросе site.com/index<что_угодно>(например, site.com/index15)обрабатывался файл site.com/index.php...

Очень сильно зависит от того, как конкретно выглядит упомянутое уже что угодно :)

Для запросов вида

site.com/index15
и ответа
site.com/index.php?dir=15

например, так:

RewriteRule ^index(.*)$ /index.php?dir=$1
LD
На сайте с 12.06.2002
Offline
71
#12

Interitus,

успел раньше :)

[Удален]
#13
Для запросов вида site.com/index15 и ответа site.com/index.php?dir=15 например, так:
RewriteRule ^index(.*)$ /index.php?dir=$1

Две поправки:

1) Во втором выражении начальный слеш не нужен.

2) [L] лучше все-таки указывать.

3) Имена лучше все-таки делать навроде site.com/index-15.html. Тогда соответствующее правило будет такое:

RewriteRule ^index-(.*).html$ index.php?dir=$1 [L]
Д
На сайте с 27.11.2002
Offline
23
#14

Спасибо :) ... Нестыковочка была с каталогами - то есть было неизвестно, к чему относится знак "/" - к синтаксису правила или идентификатору каталога :) ...

LD
На сайте с 12.06.2002
Offline
71
#15

Соглашусь :), хотя, если для корня -- начальный слеш без разницы, как я понял.

Д
На сайте с 27.11.2002
Offline
23
#16

Еще одна мысль появилась :) - а нельзя ли избавиться от анализирования строки url и реализовать ее в правиле... Реализованы ли в его синтаксисе переменные? То есть, по аналогии с вышеприведенным примером, что-то типа

RewriteRule ^index-(.*).html$ index.php?dir=$*[L]

Фактически, при запросе index-12345.html выдавалось бы index.php?dir=12345

Таким образом можно было бы избавиться от лишнего анализа строки url и не вызывать лишний файл...

P.S. Кстати, что за ключ [L] ? После этого и документацию уже искать не придется :) ...

Д
На сайте с 27.11.2002
Offline
23
#17

OK! Кажется, понял :) ...

RewriteRule ^index-(.*).html$ index.php?dir=$1[L] как и сказали выше :) ...

При таком раскладе на адрес index-12345.html будет выдано index.php?dir=12345 ... mod_rewrite "рулит" :) ... Странность только в том, что не с первого раза ясно, где определяется эта $1 ...

[Удален]
#18
Странность только в том, что не с первого раза ясно, где определяется эта $1

Значения выражений, заключенных в круглые скобки, присваиваются переменным $1 .. $9, по порядку слева направо.

Кстати, что за ключ [L] ?

Строчек RewriteRule может быть сколько угодно, URL можно последовательно преобразовывать много раз. Если указать после правила [L], то после применения этого правила все последующие правила не обрабатываются.

LD
На сайте с 12.06.2002
Offline
71
#19

Вообще-то документацию на флаги, по крайней мере, нелишне посмотреть. Особенно если используется переписывание урлов на каталог cgi-bin

Д
На сайте с 27.11.2002
Offline
23
#20

Интересует один вопрос - на данный момент в Google имеются многие страницы с параметрами - некоторое время назад на сайте был реализован mod_rewrite - соответственно URL у этих страниц другой, но, при этом, и настоящий тоже работает... Вопрос в том, когда Google проиндексирует новые URL страниц, сможет ли он их соотнести с уже имеющимися и посчитать за одни и те же? - код абсолютно одинаковый, но разные только URL . И поможет ли избежать этого, скажем, какой-то случайный код на странице, который будет всегда разным - то есть попытка сделать вид :) , что страницы разные?

123

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