Включаем модуль Mod rewrite в Apache. Linux статьи
Написать статью
Войдите, чтобы писать статьи

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

32

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
Лайков: +1
войдите, чтобы ставить лайки
32
  • Опубликовано: 04.10.2010

Комментарии

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

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

бывало не?

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

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

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

в конфиг виртуального хоста непосредственно

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

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила