Дополнительные домены и работа модуля сервера Apache mod_rewrite

Модуль mod_rewrite сервера Apache это великолепная возможность придать динамическому сайту вид статического для того, чтобы оказаться в индексе многих поисковых машин, которые совершенно не понимают значки присутствующие в динамической ссылке типа ? & и напрочь отказываются индексировать сайты с динамическими ссылками, разве, что кроме главной страницы.

Кроме того модуль mod_rewrite позволяет компенсировать недостатки индексации сайта с www и без www. Доподлинно известно, что если для пользователя один и тот-же сайт с www и без www это одно и то же, то для многих поисковиков это два разных сайта и страницы этих двух яобы разных сайтов даже могут быть по разному индексированы.

Есть еще одно интересное применение модуля mod_rewrite. Всем известно, что практически любой современный хостинг кроме основного паркованного позволяет на одном IP иметь так называемые дополнительные домены. Их вполне может быть несколько штук. Это значит, что хостинг позволяет на одном аккаунте иметь несколько сайтов. Чаще всего основной домен это большой динамический сайт, где в файле . htaccess прописаны правила работы модуля mod_rewrite для этого сайта в которые входят правила преобразования статичесих ссылок сайта в динамические для правильной работы скриптов сайта. Но если на дополнительных доменах стоят, например старенькие статичные сайты, а они, как правило находятся в одной и той-же папке аккаунта public_html, то они просто перестанут работать, потому, что для них тоже будет работать правило из основного . htaccess по преобразованию статичных ссылок в динамичные. Выход из этого достаточно прост. Поскольку в каждой папке с дополнительным доменом также имеется файл . htaccess то в нем достаточно прописать обратное правило и статичный сайт заработает, как и прежде.

А теперь немного поподробнее. Рассмотрим описанные моменты на примере какой-либо динамической ссылки динамического сайта http://mysite. ru. Допустим ссылка с тремя параметрами и ее составляющие:

http://mysite. ru/index. php?sect=one&subsect=two&ref=three
http://mysite. ru/index. php?sect=one&subsect=two
http://mysite. ru/index. php?sect=one

Это, что-то вроде страницы вложенной в раздел и подраздел. На самом динамическом сайте такие ссылки вполне можно прописать в виде:

http://mysite. ru/one/two/three. html
http://mysite. ru/one/two. html
http://mysite. ru/one. html

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

# Внутренние преобразования статических URL в динамические
RewriteRule ^(. *)index. html$ index. php [L]
RewriteRule ^([^/]+)/?. html$ index. php?sect=textarea [L]
RewriteRule ^([^/]+)/$ index. php?sect=textarea [L]
RewriteRule ^([^/]+)/([^/]+)/?. html$ index. php?sect=textarea&subsect= [L]
RewriteRule ^([^/]+)/([^/]+)/$ index. php?sect=textarea&subsect= [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?. html$ index. php?sect=textarea&subsect=&ref= [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/$ index. php?sect=textarea&subsect=&ref= [L]

Явно видно, что представленные выше правила позволяют работать ссылкам в любом из принятых на сегодня видов. Тоесть:

http://mysite. ru/one/two/three. html или http://mysite. ru/one/two/three/
http://mysite. ru/one/two. html или http://mysite. ru/one/two/
http://mysite. ru/one. html или http://mysite. ru/one/

Что самое интересное работать будут также и родные скриптам сайта динамические ссылки вида:

http://mysite. ru/index. php?sect=one&subsect=two&ref=three
http://mysite. ru/index. php?sect=one&subsect=two
http://mysite. ru/index. php?sect=one

А это очень важно в том смысле, что если сайт не новый и был уже индексирован некоторыми поисковиками, которые понимают динамические ссылки, например такие, как Google, Yandex, то из индекса не пропадет ни одна страница. Просто при последующих, после добавления к сайту правил mod_rewrite, заходах поисковых ботов на сайт старые динамические ссылки сайта в индексе постепенно будут заменены на новые статичные.

Ниже приведенная записсь в файл . htaccess устранит разночтение для поисковиков для сайта с www и без, если сайт изначально находится в домене без www.

RewriteCond %HTTP_HOST ^www. mysite. ru$
RewriteRule ^(. *)$ http://mysite. ru/textarea [R=301,L]

Ну в полном виде содержимое файла . htaccess для модуля mod_rewrite динамического сайта может быть следующее:

DirectoryIndex index. php

# Запуск mod_rewrite
RewriteEngine on
Options +FollowSymlinks
RewriteBase /

RewriteCond %HTTP_HOST ^www. mysite. ru$
RewriteRule ^(. *)$ http://mysite. ru/textarea [R=301,L]

# Внутренние преобразования статических URL в динамические
RewriteRule ^(. *)index. html$ index. php [L]
RewriteRule ^([^/]+)/?. html$ index. php?sect=textarea [L]
RewriteRule ^([^/]+)/$ index. php?sect=textarea [L]
RewriteRule ^([^/]+)/([^/]+)/?. html$ index. php?sect=textarea&subsect= [L]
RewriteRule ^([^/]+)/([^/]+)/$ index. php?sect=textarea&subsect= [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?. html$ index. php?sect=textarea&subsect=&ref= [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/$ index. php?sect=textarea&subsect=&ref= [L]

А еще ниже содержимое . htaccess для директории со статическим сайтом (обычно эта директория имеет название самго сайта без http и www) находящимся на дополнительном домене в папке public_html. Папка public_html это обычно папка корневой директории основного парованного домена сайта на хостинге

DirectoryIndex index. html

# Запуск mod_rewrite
RewriteEngine on
Options +FollowSymlinks
#RewriteBase /

# Переход с динамики на статику
RewriteRule ^(. *)index. php$ index. html [L]

Здесь все не сложно. Если например в браузере набран адрес индексной страницы статичного сайта, находящегося на дополнительном домене, то поскольку директория дополнительного домена находится в директории основного домена, тоесть в папке public_html, то сработает mod_rewrite и правило прописанное в основном . htacces RewriteRule ^(. *)index. html$ index. php [L] и пеереведет введенный адрес на динамику. Затем преобразованный адрес, попав в дополнительный домен, преобразуется обратно в статику после срабатывания mod_rewrite и правила прописанного в файле . htacces дополнительного домена RewriteRule ^(. *)index. php$ index. html [L]. То же будет происходить с адресом любой другой страницы статичного сайта на дополнительном домене.


Первоисточник: Mod_rewrite и дополнительные домены

Автор статьи: неизвестный | Дата публикации: 15:51 14.12.2016 Trenddaily.Ru




Отзывы и комментарии
Ваше имя (псевдоним):
Проверка на спам:

Введите символы с картинки:



Характеристики стоматологического компрессора – советы медикам

Характеристики стоматологического компрессора...


Стоматологические компрессоры, поршневые обычно, должны отвечать определенным техническим и гигиеническим характеристикам. Современный рынок компрессорного оборудования предлагает широкий выбор произв...


Дипломные работы - план дипломной работы, темы дипломных работ

Дипломные работы - план дипломной работы, тем...


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


Артриты

Артриты


Остеоартрит – заболевание, поражающее суставы. Ревматоидный артрит является заболе­ванием организма в целом и может влиять не только на суставы, но и на другие органы. Использование следующих продукт...


Бронирование билетов на концерты, в театры и на цирковые представления

Бронирование билетов на концерты, в театры и ...


Лишь каких-то двадцать лет назад билеты на концерт знаменитых артистов, на спектакли для детей и другие мероприятия приходилось брать через знакомых или покупать в кассе, часами стоя в очереди. А эти ...


Поддержка 1с

Поддержка 1с


Программа 1С: Предприятие обладает функциональностью для задач в области автоматизации рутинных дел в руководствем фирмой. Более того, программа владеет многофункциональным устройством, что помогает о...


Гипертония. О заболевании

Гипертония. О заболевании


Гипертония - заболевание, носящее хронический характер, его основной признак – повышенное артериальное давление. Как известно, гипертония чаще всего приводит к развитию более серьезных сердечнососудис...


Популярное

Как получить воду?!

Вода! Она является незаменимым фактором выживания людей. Все люди употребляют эту живительную влагу во всех областях своей реальности и не имеется надобности сегодня подтверждать её значимость. Добыча...

«Табель о рангах»: для чего она была нужна? Малень

«Настоящий мужчина состоит из мужа и чина» (А. П. Чехов) Писателей, которых хочется перечитывать, не так уж и много. Чехова я перечитываю до сих пор, получая от этого немалое удовольствие...

Дианетика

Дианетика (от греч. «dia», что значит «через», и «nous» - «разум») – то, что разум (душа), делает с телом. В ней описано открытие Л. Рона Хаббарда, разрешающее загадку разума, раскрывающее основну...

Шторы - вещь, которая делает наш дом уютнее

Очень важно подобрать ткань для штор. Ведь пошив штор одинакового дизайна из разных материалов имеет свои особенности, и выглядеть такие шторы будут по-разному. Шторы, индивидуально пошитые для того и...

Почему так важен каждый миг?

Хочу вам рассказать, про одну очень интересную статью, которую я когда-то давно прочитал на блоге Сергея Жуковского. Статью я не нашел, чтобы выложить ее тут, но основная мысль ее такова, что есть одн...

Выбираем недорогой хостинг для блога

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

Огранка драгоценных камней

Огранкой подчеркивается форма камня, его кристаллическое строение, при огранке камень выигрывает в цвете и гораздо сильнее блестит. У самых дорогих драгоценных камней, таких как алмаз, изумруд, рубин,...

Древесные плиты

Сегодня красивая мебель может быть изготовлена не только из натурального дерева. Для ее производства используют также древесные плиты. Применение данного материала распространяется на многие современн...

Послестроительная уборка

«Послестроительная уборка - это комплекс работ, в процессе которого используется профессиональное оборудование для уборки, моющие и чистящие средства мировых производителей, которые позволяют выполнит...

Остекление частного дома

Где как не в загородном доме воплощать свои идеи в реальность? Только такой дом строится, как принято говорить в народе - «для души». И только тут можно реализовать свои мечты и идеи. Поэтому, в таком...

О портале:

Наш интернет-портал является ресурсом, который включает в себя полный ассортимент информативных и отличных статей. Абсолютно каждый гость найдет для себя что-нибудь полезное. Модернизированный дизайн позволяет вам быстро находить требуемую информацию. Самые разнообразные тематические статьи дают возможность вам совершенствоваться в той или иной сфере. Быть более начитанным и грамотным. Современный дизайн сайта позволяет просматривать статьи на всех электронных устройствах. Теперь отыскать подходящую информацию стало совершенно легко.

Мы собрали для вас полезные и занимательные статьи. У нас сайте вы найдете ответы на интересующие вас вопросы. Простая система поиска позволяет вам в кратчайшие сроки отыскать нужную информацию. Адаптированный дизайн позволяет вам просматривать информацию на абсолютно любых гаджетах. Теперь, поиск требуемой информации будет занимать у вас секунды.