Настройка пользователя, от которого работает apache:
файл - /etc/apache2/envvars
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
если задать имя пользователя - то apache будет работать от этого пользователя
Конфигурационный файл для каждого сайта в Ubuntu должен быть свой. Хранятся они в директории /etc/apache2/sites-available.
Содержимое файла test-template описывает правила работы Apache с одним конкретным сайтов (для примера возмем сайт testhost):
<VirtualHost *:80>
ServerName testhost
ServerAlias www.testhost
ServerAdmin webmaster@example.com
DocumentRoot /home/olga/sites/testhost/www
<Directory /home/olga/sites/test/www>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /home/user/sites/testhost/logs/error.log
LogLevel warn
ServerSignature On
</VirtualHost>
Подключение файла конфигурации для хоста testhost:
a2ensite testhost
При выполнении этой компанды создается ссылка на файл конфигурации
Отключение хоста производится командой:
a2dissite testhost
В файл /etc/hosts нужно добавить созданный виртуальный хост:
127.0.0.1 testhost
Перезапустить Apache командой для применения новой конфигурации
/etc/init.d/apache2 restart
После перезапуска Apache в каталоге /home/user/sites/testhost/logs/ создастся файл лога ошибок error.log. Владельцем данного файла будет являться root. Для того чтобы этот файл мог просматривать пользователь user нужно выполнить команду :
sudo chmod -R 774 /home/user/sites/testhost/logs/error.log
Теперь, при открытии в браузере http://testhost - будет открываться индексный файл в нужном каталоге
Подключение модулей в Apache производится командой a2enmod
Чтобы подключить модуль mod_rewrite нужно выполнить:
a2enmod rewrite