Apache2 + mod_rewrite + Ubuntu 8.04

Апрель 22, 2008

При установке php5 оный автоматически должен подтягивать mod_rewrite. Как он включается — я писал в самом мануале по установе LAMP.
Однако, в 8.04 стандартный ман перестал работать — «a2enmod mod_rewrite» отказывается работать, выдавая сообщение «This module does not exist!».

Глупость, но в папочке /etc/apache2/mods-available обнаруживаем этот самый модуль. Значит, механизм включения модулей дает сбой. Если вы не нашли rewrite.load в своей директории — скачайте его и положите в нее.

Далее все просто — создаем симлинк на этот файлег в папке mods-enabled. Делается это так:
$-> ln /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load

По традиции, перезапускаем Apache2 и наслаждаемся :)
ЗЫ: у вас может возникнуть еще и проблема с Internal Server Error, связанная с mod_rewrite. Решается она примитивно — идем в ваш конфиг сервера (у меня это /work/projects/www/apache/server_cfg — я сам так захотел, а по-дефолту он лежит в /etc/apache2/sites-enabled/000-default) и убираем строки, похожие на «Options Indexes FollowSymLinks MultiViews». Что это такое — можете спросить у гугеля — для персонального сервера web-разработчика это не критично: кому нужна автоматическая генерация индексной страницы для папок? :) (а вот с прогулками по симлинкам нада бы поосторожнее, если ваш сервер настроен нестандартно.)

Комметирование закрыто.