| как установить LAMP (linux + apache + mysql + php) на базе Ubuntu 
9.10. Дополнительно покажу как настроить несколько не очевидных деталей. Итак, поехали.
 Установка LAMPУстановка LAMP в Ubuntu проходит удивительно просто. Заходим в 
Система → Администрирование → Менеджер проектов Synaptic. После ввода 
пароля находим вкладку Правка → Отметить пакеты для Задачи. В 
появившемся окне ставим галочку напротив LAMP server и жмем OK. После 
уже в самом менеджере нажимаем Применить. Если все сделано нормально, то
 должна начаться загрузка пакетов и их дальнейшая установка. После 
установки пакета MySQL Вас попросят ввести пароль для администратора 
(root) MySQL. Его необходимо запомнить. Вот в общем то и все. Набираем в браузере http://localhost/ и видим "It works!".
 Настройка виртуальных хостовНи для кого не секрет, что разработку проектов нужно вести на 
отдельном виртуальном хосте. Сайт1 должен быть доступен по URL 
http://site1/, cайт2 — по URL http://site2/ и т.д. Настойка хостов в 
Ubuntu тоже не сложная. Набираем в консоли:
 sudo gedit /etc/hosts Откроется файл соответствия имен хостов ip адресам. По-умолчанию 
должна быть запись 127.0.0.1 localhost. Она заставляет обращаться к 
локальному компьютеру при вводе в браузере http://localhost/. Добавим 
еще один хост с именем site1. В результате у нас должно получиться 
следующее: 127.0.0.1 localhost site1 Сохраним и закроем редактор. Далее нам нужно включить виртуальный хост. Делается это путем ввода в консоли: sudo a2ensite site1 Для отключения другая команда: sudo a2dissite site1 Все хост настроен.   Настройка ApacheВсе настройки apache лежат в папке /etc/apache2/. Главный конфигурационный файл apache находится здесь же, но о нем чуть позже.Для удобства серверные файлы будут находится в папке /home/user/server/. В ней будут по папкам разделены файлы сайтов. Например site1 лежит в папке /home/user/server/site1, site2 - в папке /home/user/server/site2 и т.д. В папке /home/user/server/site1 создадим еще две папки для логов (log) и для самих файлов (www).
 Для настройки хоста site1 нам понадобится папка /etc/apache2/sites-available. В ней содержится информация по всем возможным виртуальным хостам ubuntu. Создадим в ней файл site1 с таким содержанием:
 <VirtualHost *:80> ServerAdmin webmaster@localhost e-mail администратора
 ServerName site1 # имя сервера
 DocumentRoot /home/user/server/site1/www # путь к документам
 DirectoryIndex index.php index.html index.htm # порядок поиска индексных файлов
 <Directory /home/user/server/site1/www> # настройка доступа для директории
 Options Indexes FollowSymLinks MultiViews
 AllowOverride All
 Order allow,deny
 allow from all
 </Directory>
 ErrorLog /home/user/server/site1/log/error.log # настройка папки с логами ошибок
 LogLevel warn # какие ошибки будем сохранять
 CustomLog /home/user/server/site1/log/access.log combined # настройка папки с логами доступов
 </VirtualHost>
 
 
 Далее нужно перезагрузить Apache: sudo /etc/init.d/apache2 reload Идем в папку /home/user/server/site1/www и создаем там файл index.php с содержанием: Вводим в браузере http://site1/ и видим настройки php.Если Вы видите, что у на сервере установлена защита Suhosin Patch, то удалить его можно командой:
 sudo apt-get remove php5-suhosin или, если удалять Вы не хотите, eё можно отключить в настройках php.ini: suhosin.session.encrypt = Off. Смотрите ниже.   Настройка phpКонфигурационный файл php лежит в каталоге /etc/php5/apache2/. Для редактирования набираем в консоли: sudo gedit /etc/php5/apache2/php.ini и меняем следующие значения на: magic_quotes_gpc = Off, register_globals = Off. Эти настройки являются сугубо индивидуальными, Вы можете их 
оставить по-умолчанию и не менять. Еще я бы посоветовал также 
переместить папку для хранения сессий, например на 
/home/user/server/sessions. Меняется она изменением директивы: session.save_path = /home/user/server/sessions По необходимости можно увеличить время жизни сессии на нужное Вам. 
Для этого меняем директиву session.gc_maxlifetime. Значение указывать
 в секундах.   Настройка MysqlКак правило особых настроек для MySQL не требуется. Но если Вам 
необходимо что-то изменить, то конфигурационный файл находится в 
/etc/mysql/my.cnf. В некоторых случаях необходимо перенести файлы MySQL в другую папку. После внесения изменений сервер MySQL перегрузается командой: sudo /etc/init.d/mysql reload   Включение mod_rewritemod_rewrite включается командой в консоли: sudo a2enmod rewrite Перезагружаем Apache: sudo /etc/init.d/apache2 reload В настойках виртуального хоста директива AllowOverride должна быть All   Пользователь apacheПо-умолчанию процесс apache запускается от пользователя www-data. 
Таким образом все файлы созданные apache, например через fopen(), в 
ubuntu будут принадлежать пользователю www-data. Для того процесс 
apache запускался от нужного нам пользователя нужно отредактировать 
apache2.conf: sudo gedit /etc/apache2/apache2.conf меняем директивы User и Group на нужного нам пользователя и группу. Перерезагружаем apache. |