Включаем модуль Mod rewrite в Apache

Mod rewrite в ApacheМодуль Mod rewrite используется для преобразования URL на основе правил. В статье рассказывается, как включить поддержку модуля Mod rewrite в веб-сервере Apache в операционной системе Ubuntu.

Подключаем модуль Mod rewrite

Перейдите в каталог /etc/apache2/mods-available и убедитесь, что там есть файл rewrite.load отвечающий за загрузку модуля Mod rewrite. Для этого выполните в консоли следующие команды:

cd /etc/apache2/mods-available
ls

В списке файлов должен присутствовать файл с именем rewrite.load.

Теперь перейдем в каталог /etc/apache2/mods-enabled и создадим символьную ссылку на файл rewrite.load. Для этого выполните команды:

cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/rewrite.load rewrite.load

Изменяем настройки виртуального хоста

Далее нужно изменить настройки виртуального хоста, который должен использовать модуль Mod rewrite. Для этого нужно открыть файл настроек конкретного хоста. Для примера возьмем стандартный файл /etc/apache2/sites-available/default, который содержит настройки хоста с именем localhost. Выполните следующую команду, чтобы открыть файл в редакторе GEdit:

sudo gedit /etc/apache2/sites-available/crocodilus

Найдите в файле секцию <Directory /корневой/каталог/сайта/> и измените в ней строку AllowOverride None на AllowOverride All. Должно получиться примерно так:

<Directory /var/www/>
	Options Indexes FollowSymLinks MultiViews
	AllowOverride All
	Order allow,deny
	allow from all
</Directory>

Перезапускаем Apache

Теперь осталось перезапустить веб-сервер Apache командой:

sudo apache2ctl restart
04.10.2010yuriy24

Комментарии

Альтен Кобург
04.10.2010, 09:11
Спасибо! Как раз вчера искал почему пуст httpd.conf
ras0ft
13.10.2015, 22:09
Првиет, у меня после обновы, отвалилсся ЧПУ на сервере - попробовал настроить не работает ну никак. и htaccess обновлял, и вордпресс обновил, и mod-rewrite вручную перезапускал командами, хрен там.

захожу на linux4home.ru и не пускает ни на /video никуда.

бывало не?

allowoverride All естественно делал. a2enmod разумеется тоже делал. и сервер конечно же перезапускал. разве только что молотком по нему бить не пробовал.
Денис Радченко
04.10.2010, 15:37
А чем вам не нравится sudo a2enmod rewrite ?
Активный
04.10.2010, 16:42
Нравится, хорошая штука. Фактически она выполняет ln -s ../mods-available/rewrite.load rewrite.load
Я просто описал более 'низкоуровневый' метод.
Активный
15.10.2010, 21:14
Спасибо! как раз искал, в чем проблема была с ЧПУ, оказывается совсем забыл про замену AllowOverride None на AllowOverride All :)

Отличный ресурс!
batan
03.11.2010, 22:02
спс! статья спасла мне жизнь!))
Активный
05.01.2011, 19:15
Спасибо!
bussel
18.02.2011, 10:44
Даже не знаю, как благодарить автора этой статьи. Три дня на вновь установленном LAMP я не мог добиться, чтобы мой сайт открывал внутренние страницы. Еле-еле до меня дошло, что дело тут кроется в ЧПУ. Потом еще долго ковырялся в догадках, почему, собственно, они не открываются, так как с линками по умолчанию все работало. Наконец, прочитав эту статью, я понял, что просто-напросто у меня в apache не активирован mod_rewrite, а также, как его заставить работать. Огромнейшее спасибо!!!
Dark
07.03.2011, 17:21
Огромное спасибо! Файл httpd.conf был пустой, не знал что делать, а тут всё так просто оказывается. Спасибо!
Василий
14.05.2011, 12:43
Рельно помогло. бился аж 6 часов - оказалось:
- apache2ctl restart
обязательная запись. внес ее сначала в default. а затем в виртуальные хосты. СПАСИБО И РЕСПЕКТ
... p.s. блин вчера лег спать в пять утра из-за этой доблабнной настройки. ну думал ваще пипец...
Юрий Изотов
10.07.2011, 10:17
Вообще в убунте для включения сайтов есть утила a2ensite (соотв. для отключения оных a2dissite), то есть в убунте после создания /etc/apache2/sites-available/crocodilus , надо просто сделать:
sudo a2ensite crocodilus
А чтобы включить mod_rewrite надо сделать:
sudo a2enmod rewrite
и после этого прога предложит перезапустить Апач.
Итого нет мороки с символьными ссылками. Удобно.
Активный
13.07.2011, 10:15
Удобно, только далеко не везде убунту, и знать не убунтушные методы надо. Нужно ведь уметь с линукс работать, а не только с убунту.
Alex
04.08.2011, 01:01
Спасибо за ресурс!
Anton
29.08.2011, 21:47
Делал для winlock. ЧПУ на вордпрессе пол ночи! СПАСИБО ЗА sudo a2enmod rewrite ВСЕ НАМНОГО ПРОЩЩЕ!!!
Den
16.12.2011, 03:17
Спасибо за подсказку. Голову сломал
Александр Асланьян
05.01.2012, 13:12
Большое спасибо за ответ. Ковыряюсь с установкой cms newscoop. Напишу сегодня у себя в жж пост про установку на виртуальный сервер и работу с этой cms. Если интересно: http://aslanalexander.livejournal.com/
Евгений Тимочкин
21.10.2012, 13:55
Спасибо за совет. Опишу ситуацию. На сервере стоит апач, на нем крутится 2 сайта. Допустим site1.ru и site2.ru. Виртуальные хосты я настроил, оба сайта видны. В cms MODx Revolution включаю ЧПУ. Все по инструкции, в файле .htacces включаю RewriteEngine On и RewriteBase /. И ничего не работает... Сначала я наткнулся на AllowOverride None в настройках. Исправил. Теперь вместо ошибки 404 я получаю ошибку 500. Не подскажете в чем может быть затык? Заранее благодарен.
Активный
22.10.2012, 16:03
А сам модуль mod_rewrite апачем подгружен?
gst
08.01.2013, 23:59
благодарствую за статью
Иван Рогов
07.04.2013, 12:17
Спасибо дружище! Два дня сидел разбирался чегож у меня ЧПУ не работают!!!:)
sasser
10.05.2013, 13:01
Тоже лайкаю автору. Описано всё коротко и ясно. Долго не мог понять почему у меня в связке Ubuntu + LAMP + MODX не работают ЧПУ. Затем докопал что должен быть подключен в apache модуль rewrite и погуглив "apache2 установить модуль mod_rewrite" нашел эту замечательную статью. Одна минута и всё работает.
Hanma Baki
05.03.2015, 23:14
Мне статья, тоже помогла! Большое спасибо! Главная страница грузилась, а при переходе по ссылкам сервер выдавал ошибку 404. Осталась одно, не выводятся картинки, которые заданы фоновым изображением в стилях css, типа background (../image1.png). Видимо, где-то опять Апачь шалит...
DonnaGib
20.04.2017, 20:05
как открыть файл docx ?
Forsazhe
28.04.2017, 08:40
Обычным вордом из офиса 2013 к примеру.

Написать комментарий

Ваше имя:
Текст:
Вы не зарегистрированы: комментарий будет опубликован только после просмотра администратором сайта.