Установка Apache, MySQL / MariaDB, PHP (LAMP) на CentOS 7
Стек LAMP используется для обозначения группы бесплатного программного обеспечения со свободным исходным кодом, который обычно устанавливается вместе на для того, чтобы получить сервер динамических веб-приложений и веб-сайтов. На самом деле этот термин представляет собой ОС Linux с веб-сервером Apache, при этом данные сайта хранятся в базе данных MySQL (с использованием MariaDB), а динамический контент обрабатывается PHP.
В данной статье мы рассмотрим возможность установки описанного выше ПО на CentOS 7, используя стандартный менеджер пакетов – yum. Для этого нам потребуются данные (логин и пароль) root, а при удаленной установке и доступ по SSH.
Установка Apache
Это самый популярный на данный момент веб-сервер, поэтому это “выбор по умолчанию” для размещения практически любого веб-сайта. Для установки выполним следующую команду:
yum -y install httpd
При выполнении операций под обычным пользователем, для корректного выполнения операции стоит в начало строки добавить sudo. Параметр “-y” автоматически подтвердит продолжение (загрузку пакетов) установки.
После завершения установки запустим Apache:
systemctl start httpd.service
Выполнить проверку работы свежеустановленного веб-сервера можно уже сейчас, набрав IP адрес вашего сервера в браузере.
http://IP_address_вашего_сервера/
systemctl status httpd
– также отображает статус указанного сервиса
Вы увидите следующую приветственную картинку:
Если вы видите эту картинку, значит сервер работает корректно. Далее выполним добавление службы веб-сервера в автоматический старт при загрузке системы:
systemctl enable httpd.service
Теперь, когда вы имеете установленный веб-сервер, перейдем к следующему шагу – редактирование системного брандмауэра:
firewall-cmd --zone=public --add-port=80
/tcp
--permanent
firewall-cmd --reload
Установка MySQL / MariaDB
В последний (на данный момент) версии CentOS 7 разработчики отказались от использования MySQL и перешли на бесплатно распространяемый сервер баз данных – MaridDB (от разработчиков MySQL, поэтому API и синтаксис тот же). Установка аналогична, выполняется следующим образом:
yum -y install mariadb-server mariadb
Запускаем сервер БД:
systemctl start mariadb
После старта данной программы, необходимо произвести настройку MariaDB, повышающую безопасность и отказоустойчивость данного ПО:
mysql_secure_installation
В данных операциях мы заменяем пустой пароль root к серверу БД, а также удаляем тестовые и пустые базы, убираем анонимных пользователей и т.п. По окончанию данных операций – добавим сервер БД в автозагрузку:
systemctl enable mariadb.service
Установка PHP
PHP является основной компонентой, которая отвечает за обработку кода для динамического контента. Под этим подразумевается обработка скриптов, подключение и взаимодействие с MySQL, передача данных на веб-сервер. Установка выполняется также через менеджер пакетов yum:
yum install php php-mysql
После этого необходимо перезапустить веб-сервер, чтобы он начал корректно работать с PHP:
systemctl restart httpd.service
Установка дополнительных модулей:
yum search php-
yum -y install php-fpm php php-pear php-process
После успешной установки пакетов проверим работу PHP на нашем сервере добавив <?php phpinfo(); ?> в файл:
vi /var/www/html/info.php
Теперь настроить брандмауэр:
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
Проверка работы PHP в браузере:
http://IP_address_вашего_сервера/info.php
Данную информацию рекомендуется удалять после завершения проверки (при необходимости ее всегда можно восстановить вышеописанным способом):
rm /var/www/html/info.php
Установка LAMP – Linux Apache MySQL/MariaDB PHP завершена.
А как теперь домен привязать ? (желательно все в подробностях и с картинками)
Кстати Спасибо за подробный мануал единственный по которому у меня все получилось 🙂 до этого юзала впс с панелями .
Хм, как-то странно оповещения о комментариях приходят, слишком поздно их замечаю. Учту Ваше пожелание, буду стараться в блажайшее время сделать такую статью, благо есть свободный VPS и похожая задачка для него.