Сейчас 127 заметки.

Установка LAMP Server на ArchLinux

Материал из ЗАметки

Это руководство предоставляет пошаговую инструкцию по установке полнофункционального стека LAMP (Apache+MySQL+PHP) на ArchLinux.

Инструкции которые содержатся в этом руководстве протестированы на платформе http://clodo.ru.


Перед началом установки необходимо обновить репозитории и установленные паекты:

pacman -Syu


Установка и конфигурация web-сервера Apache

Apache является очень популярным веб-сервером, даже не смотря на то, что в последние годы появилось много альтернатив. Apache остается решением, которое мы рекомендуем для решения большинства задач связанных с установкой веб-сервера.

Для установки текущей версии веб-сервера Apache (версии 2.x) необходимо выполнить следующую команду:

pacman -S apache

Создайте резервную копию конфигурационного файла Apache, для этого выполните команду:

cp /etc/httpd/conf/httpd.conf ~/httpd.conf.backup

Существуют и другие конфигурационные файлы Apache, которые подключаются в конце файла httpd.conf, и расположены в директории /etc/httpd/conf/extra/. Вы также можете создавать дополнительные конфигурационные файлы с использованием аналогичного синтаксиса. Мы рекомендуем регулярно создавать резервные копии всех ваших конфигурационных файлов.

По умолчанию ArchLinux не запускает Apache при перезагрузке системы. Чтобы включить автоматический запуск Apache мы должны создать соответствующую запись в файле /etc/rc.conf:

Редактируем файл /etc/rc.conf , находим строку, начинающуюся с DAEMONS. Допустим, она выглядит так:

DAEMONS=(syslog-ng network netfs crond ntpdate sshd)

Добавляем в эту строку название стартового сценария веб-сервера apache - httpd:

DAEMONS=(syslog-ng network netfs crond ntpdate sshd httpd)

Подготовка Apache к созданию виртуального хостинга

Теперь мы настроим Apache для размещения нескольких доменов (или субдоменов). Начните с определения узла по умолчанию.

Измените параметр DocumentRoot в файле /etc/httpd/conf/httpd.conf:

Редактируем файл /etc/httpd/conf/httpd.conf

DocumentRoot "/srv/http/default"

В этом же файле найдите строчку содержащую запись <Directory "/srv/httpd"> и измените ее:

Редактируем файл /etc/httpd/conf/httpd.conf

<Directory "/srv/httpd/default">

Теперь, в этом же файле, раскомментируйте (уберите символ # в начале строки) строку, содержащую запись "Include conf/extra/httpd-vhosts.conf"

Все конфигурации для виртуального хостинга установки будут объединены в один файл с именем httpd-vhosts.conf, расположенном в директории /etc/httpd/conf/extra/. Откройте этот файл в вашем любимом текстовом редакторе, и мы начнем создание виртуального хостинга. Настройка виртуального хостинга

Существуют различные способы создания виртуальных хостов, однако мы рекомендуем метод описанный ниже.

По умолчанию, Apache прослушивает все IP-адреса, доступные виртуальному серверу. Мы должны настроить его на прослушивание только адреса, который мы укажем. Даже если у вас есть только один IP адрес, не стоит пренебрегать этой процедурой.

Начните с изменения параметра Listen в файле /etc/httpd/conf/httpd.conf:

Listen	188.127.241.217:80

Замените 188.127.241.217 на IP адрес вашего виртуального сервера.

Следующим изменением станет параметр NameVirtualHost в файле /etc/httpd/conf/extra/httpd-vhosts.conf:

Редактируем файл /etc/httpd/conf/extra/httpd-vhosts.conf

NameVirtualHost	188.127.241.217:80


Настройка виртуальных хостов

Для примера, создадим конфигурационный файл для доменов "clodo.com" и "bpn.ru"..

Редактируем файл /etc/httpd/conf/extra/httpd-vhosts.conf

<VirtualHost 188.127.241.217:80> 
     ServerAdmin mail@clodo.com
     ServerName clodo.com
     ServerAlias www.clodo.com
     DocumentRoot /srv/www/clodo.com/public_html/
     ErrorLog /srv/www/clodo.com/logs/error.log 
     CustomLog /srv/www/clodo.com/logs/access.log combined
            <Directory />
               Order deny,allow
               Allow from all
            </Directory>
</VirtualHost>

<VirtualHost 188.127.241.217:80> 
     ServerAdmin admin@bpn.ru
     ServerName bpn.ru
     ServerAlias www.bpn.ru
     DocumentRoot /srv/www/bpn.ru/public_html/
     ErrorLog /srv/www/bpn.ru/logs/error.log 
     CustomLog /srv/www/bpn.ru/logs/access.log combined
            <Directory />
               Order deny,allow
               Allow from all
            </Directory>
</VirtualHost>

Примечание по поводу этого примера конфигурации:

   Каталог /srv/www для расположения файлов и скриптов для сайтов виртуального хостинга выбран для примера. При необходимости эти файлы можно расположить в других местах.
   ErrorLog и CustomLog создаются для отслеживания ошибок и сбора статистики. Их создание не обязательно. Если они определены (как показано выше), каталоги должны быть созданы до перезагрузки Apache.

Перед тем, как мы станем использовать созданную конфигурацию, необходимо создать указанные в ней каталоги. Для этого выполним следующие команды:

mkdir -p /srv/www/clodo.com/public_html
mkdir /srv/www/clodo.com/logs
mkdir -p /srv/www/bpn.ru/public_html
mkdir /srv/www/bpn.ru/logs

Выполните следующую команду для запуска Apache:

/etc/rc.d/httpd start

После внесения любых изменений в конфигурационный файл Apache, необходимо выполнять перезагрузку Apache. Для этого надо выполнить следующую команду:

/etc/rc.d/httpd reload

Предполагается, что вы уже настроили DNS для вашего домена, виртуальный хостинг для вашего домена теперь должен работать. Помните, что Вы можете создать столько виртуальных хостов сколько вам необходимо.


Установка и конфигурирование MySQL

MySQL - система управления базами данных (СУБД) очень популярная в веб-разработке. MySQL используется для хранения данных для многих популярных веб-приложений. Установка MySQL

Первым шагом является установка MySQL-сервера, для этого необходимо выполнить следующую команду:

pacman -S mysql

Для запуска установленного MySQL-сервера введите следующую команду:

/etc/rc.d/mysqld start

MySQL сервер готов для настройки и запуска. Конфигурационный файл MySQL распологается здесь - /etc/my.cnf.


Добавление MySQL в автозагрузку.

По умолчанию ArchLinux не запускает MySQL при перезагрузке системы. Чтобы включить автоматическую запуск MySQL, находим строку DAEMONS= в файле /etc/rc.conf и добавляем в неё имя стартового сценария mysqld, перед именем стартового сценария httpd:

Редактируем файл /etc/rc.conf

DAEMONS=(syslog-ng network netfs crond ntpdate sshd mysqld httpd)


Настройка MySQL и настройка базы данных MySQL

После установки MySQL, рекомендуется использовать mysql_secure_installation, эта программа поможет вам настроить безопасность в MySQL. Во время работы mysql_secure_installation, вам будет представлена возможность изменить пароль MySQL для root пользователя (по умолчанию он не установлен), удалить анонимные учетные записи пользователей и удалить тестовые базы данных. На все предложения запущенной программы рекомендуется, чтобы вы ответили "да". Если вам будет предложено перезагрузить таблицы привилегий, выберите "да". Выполните следующую команду, чтобы запустить программу:

mysql_secure_installation

Далее, мы создадим базу данных и предоставим пользователям разрешения на использование баз данных. Для этого необходимо войти в MySQL:

mysql -u root -p

После того как вы введете пароль root пользователя MySQL, вы сможете начать взаимодействие с MySQL сервером.

Для создания базы данных и предоставления пользователям привилегий, введите следующую команду. Обратите внимание, двоеточие (;) в конце строки означает завершение вводы команды. Команда должна выглядеть следующим образом:

create database test;
grant all on test.* to ’user’ identified by ’12345’;
flush privileges;

В приведенном выше примере, test это имя базы данных, user - имя пользователя c паролем 12345.

Мы завершили настройку MySQL и теперь вы можете передать учетные данные базы данных пользователям. Для выхода из администрирования MySQL введите следующую команду:

quit

Apache и MySQL установлены, теперь вы готовы перейти к установке PHP.


Установка и настройка PHP

PHP — скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.

Для установки PHP выполните следующую команду:

pacman -S php php-apache php-suhosin libmcrypt libtool

После того как PHP установлен нам нужно настроить файл конфигурации /etc/php/php.ini. Изменения, которые мы внесем, достаточны для начала использования PHP.

Убедитесь, что следующие значения установлены, и соответствующие строки без комментариев (закомментированные строки, начинаются с точки с запятой (;)):

Редактируем файл /etc/php/php.ini

error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
display_errors = Off 
log_errors = On 
error_log = /var/log/php.log
max_execution_time = 300 
memory_limit = 64M
register_globals = Off
open_basedir = /srv/http/:/srv/www:/tmp/:/usr/share/pear/
extension=mysql.so

После этого необходимо разрешить использование модуля PHP, для этого необходимо добавить в конфигурационный файл Apache соответствующие записи:

Редактируем файл /etc/httpd/conf/httpd.conf

LoadModule php5_module modules/libphp5.so
Include conf/extra/php5_module.conf

Перезагрузите Apache выполнив команду:

/etc/rc.d/httpd reload

Настройка LAMP Server закончена.