Vallyol's Blog

06/08/2012

Drupal и чистые ссылки

Filed under: Drupal, Linux, Web — Метки: , , , — vallyol @ 02:05

Включение чистых ссылок в Drupal позволяет использовать вместо друпаловского example.com/?q=user адреса в виде example.com/user. Согласитесь, это намного приятней как для глаза, так и с точки зрения удобного набора.
Например, адрес drupal.org/project/themes набирать намного удобней, чем используя знаки вопроса с непонятными буквами. К тому же, в силу того, что поисковые системы в последнее время движутся навстречу пользователю, использование чистых урлов хорошо отражается на сео… Да и некоторые модули из состава SEO Checklist без включения чистых ссылок работать не будут.
Установленный на некоторых ОС Линукс веб-сервер, в упор не желает помогать друпалерам в этом вопросе: чистые ссылки не работают!


Как написано в ubuntu server guide:

OK, I know it is not recommended — how do I do it anyway?

(Хорошо, я знаю, что это не рекомендуется — но как мне сделать это в любом случае).
Для включения чистых ссылок необходимо включить модуль mod_rewrite веб-сервера Apache. Идем в консоль, чтобы проверить доступность этого модуля на нашем сервере

Так, модуль есть. Теперь его нужно «включить»

Теперь проверяем, появился ли наш модуль среди работающих.
Способ 1 — команда: apache2ctl -M — и видим все подгруженные модули

Способ 2 — в MC зайти в директорию mods-enabled, и там всё увидеть

Далее, идем в файл, содержащий настройки виртуальных узлов 000-default, расположенный в каталоге «подключенных» сайтов, и переписываем значения параметра AllowOverride с None на All (путь на рисунке можно увидеть на вверху зеленом фоне).

После этого необходимо перезапустиь веб-сервер:

По идее, ВСЁ!!!
Тест чистых ссылок должен быть пройден.
Но… У меня на двух машинах с разными версиями Кубунты включение ссылок прошло по-разному: на стационаре с более древним Линуксом этого оказалось достаточно, а вот на буке с последней версией системы пришлось выполнить ещё одно маленькое действие — чуть-чуть дописать в apache.conf. В самом конце файла, где указано расположение конфигурации виртуального хоста, продублировал запись, указывающую расположение сайта с параметром All у AllowOverride

После этого — очередная перезагрузка веб-сервера. И … Тест чистых ссылок проходит!

Теперь ссылки на сайте выглядят так

Реклама

Блог на WordPress.com.

%d такие блоггеры, как: