Установка и настройка LAMP в Ubuntu
Эта статья расскажет, как произвести установку и базовую настройку Apache, MySQL и PHP на примере операционной системы Ubuntu Linux. Кстати, написанное справедливо и для Debian. Для любых современных версий этих систем. Инструкция для Fedora.
Установка Apache
Для установки Apache в программе Synaptic выберем следующий пакет:
- apache2
Все дополнительные пакеты «подтянутся» автоматически. Для проверки работоспособности достаточно в браузере набрать адрес localhost. Надпись «It works!» свидетельствует об успешной установке Apache.
Как правило, любая CMS (система управления контентом сайта) предлагает возможность использовать человеку понятный URL (ЧПУ), то есть адреса страниц удобные для восприятия. Посмотрите на адрес этой страницы и поймете о чём речь. Для включения этой возможности надо установить один из модулей Apache — mod_rewrite. Для этого в «Терминале» выполним команды:
sudo a2enmod rewrite
sudo /etc/init.d/apache2 restart
Первая строка активирует модуль, вторая — перезапускает Apache.
Установка PHP
В Synaptic ставим пакет:
- php5
Во время установки PHP по зависимости установился пакет php5-cli. Это очень интересный пакет, который позволяет выполнять PHP-код непосредственно в «Терминале». CLI расшифровывается как command-line interpreter (интерпретатор командной строки). С его помощью мы можем протестировать работу PHP, «не отходя от кассы». Открываем «Терминал», вводим и запускаем следующее:
php -r 'print(phpinfo());'
В ответ, если установка прошла успешно, получим информацию о PHP. Выглядеть это будет, конечно, не так красиво как в браузере.
Установка MySQL
Нужные пакеты:
- mysql-server
- phpmyadmi
Первый пакет — это сервер БД, а второй — phpMyAdmin — программа для администрирования базы данных.
Во время установки Synaptic спросит пароль для root-пользователя БД.
Настройка Apache. Использование виртуальных хостов, основанных на имени
Часто домашнюю машину используют как площадку для разработки и дальнейшего тестирования будущих сайтов и других проектов. В этой ситуации на одном компьютере должно сосуществовать сразу несколько сайтов. Посмотрим, как этого можно добиться.
Сначала необходимо сделать виртуальные хосты (адреса сайтов, если хотите), на которых будут работать будущие сайты. Хосты хранятся в файле /etc/hosts. Добавим в него пару строк приблизительно следующего содержания:
127.0.0.1 имя-вашего-сайта имя-другого-сайта
Замените имена своими, например: test.com или my-site.ru. После перезапуска Apache можете открыть в браузере адрес вашего нового сайта. В ответ вы должны увидеть уже знакомую надпись «It works!». Если нет, то, возможно, открылся настоящий сайт. Попробуйте перезагрузить страницу.
Теперь необходимо создать связь между адресами и файлами, которые будут там работать. Для этого отредактируем файл /etc/apache2/httpd.conf. Добавим в него следующие строки:
NameVirtualHost 127.0.0.1:80
ServerName localhost
AddDefaultCharset utf-8
<VirtualHost 127.0.0.1:80
DocumentRoot /любой-каталог/имя-вашего-сайта
ServerName имя-вашего-сайта
</VirtualHost>
<VirtualHost 127.0.0.1:80
DocumentRoot /любой-каталог/имя-другого-сайта
ServerName имя-другого-сайта
</VirtualHost>
NameVirtualHost — обязательная директива для использования виртуальных хостов, основанных на имени. В качестве параметра указывается IP-адрес, на который сервер будет получать запросы. В нашем случае — это локальный компьютер.
ServerName — имя сервера. Должно соответствовать тому, которое записано в файле /etc/hosts.
AddDefaultCharset — устанавливает кодировку по умолчанию. В нашем случае UTF-8 (везде и всегда надо использовать UTF-8).
VirtualHost — контейнер, в котором хранятся директивы для определенного IP-адреса или хоста. В нашем случае IP-адрес должен совпадать с тем, который указан в директиве NameVirtualHost.
DocumentRoot — каталог, файлы из которого сервер будет использовать при ответе на запрос. Там, например, могут быть файлы WordPress, Drupal либо ваши собственные скрипты.
Теперь, когда настройка завершена, мы в последний раз перезапускаем Apache и на этом всё.