|  | Установка LAMP (Linux, Apache, MariaDB, PHP / PhpMyAdmin) в CentOS 7.0
|
Что такое LAMP ? Это набор (стэк) программного обеспечения состоящий из Linux, Apache, MySQL и PHP.
Всего 4 компонента LAMP
Linux: Операционная система. На ней базируются все остальные компоненты
Apache: Веб-сервер, втрой компонент, обычно это Apache Web Server.
MySQL: Сервер баз данных. MySQL / MariaDB может располагатся на отдельном сервере.
PHP: Язык программирования, позволяет создавать веб сайты или веб приложения.
1. Базовые требования
В данной статье мы считаем, что на сервере уже установлена операционная система CentOS 7, с полность налаженным сетевыми доступами.
2. Установка веб-сервера Apache
- установка веб-сервера Apache
#yum install httpd
- после завершения установки запускаем сервер
#systemctl start httpd
- проверяем состояние запуска веб-сервера
#systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2018-12-12 14:26:16 MSK; 5s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 18378 (httpd)
Status: "Processing requests..."
CGroup: /system.slice/httpd.service
├─18378 /usr/sbin/httpd -DFOREGROUND
├─18379 /usr/sbin/httpd -DFOREGROUND
├─18380 /usr/sbin/httpd -DFOREGROUND
├─18381 /usr/sbin/httpd -DFOREGROUND
├─18382 /usr/sbin/httpd -DFOREGROUND
└─18383 /usr/sbin/httpd -DFOREGROUND
Dec 12 14:26:15 cc-b6-it89lnx systemd[1]: Starting The Apache HTTP Server...
Dec 12 14:26:16 cc-b6-it89lnx httpd[18378]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::4ba7:4213:27d2:8236. Set the '...this message
Dec 12 14:26:16 cc-b6-it89lnx systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.
подобный ответ сообщает о корректном запуске веб-сервера
Для сетевого доступа к веб-серверу необходимо настройть файрвол firewalld для доступа к веб-серверу по портам 80 и 443
- добавляем доступ для сервиса http и https
#firewall-cmd --add-service=http
#firewall-cmd --add-service=https
или
- при выполнении команды указанной ниже, доступ сохранится после перезагрузки сервера
#firewall-cmd --permanent --add-service=http
#systemctl restart firewalld
Для проверки доступа к веб-серверу apache можно через браузер подключится к нему по ip адресу
http://<ip адрес веб-сервера>

3. Установка поддержки php5 для сервера Apache
Используя команду указанную ниже, получаем список всех модулей php доступных в репозитории yum
#yum search php
В зависимости от необходимости поддержки разных сервисов можно устанавливать отдельные модули. Для нашей задачи установим следующий комплект:
#yum install php php-mysql php-pdo php-gd php-mbstring
Перезапустим веб-сервер apache
#systemctl restart httpd
Для того, чтобы получить информацию об установленных модулях php, через браузер добавим файл в папку по умолчанию, созданную apache при установке.
По умолчанию, apache испльзует папку /var/www/html для хранения файлов сайта.
Создадим файл infosite.php выполнив команду:
#echo "<?php phpinfo(); ?>" > /var/www/html/infosite.php

Если возникает ошибка PHP в установке времени или даты, то откройте файл /etc/php.ini и раскомментируйте параметр data.timezone
date.timezone = Continent/City
4. Установка сервера баз данных MariaDB
Команда установки сервера баз данных MariaDB
#yum install mariadb-server mariadb
После завершения устнановки запускаем сервис и задаем пароль администратора root
#systemctl start mariadb
Проверяем состояние сервера
#systemctl status mariadb
● mariadb.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2018-12-12 15:42:01 MSK; 7s ago
Process: 20416 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS)
Process: 20336 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS)
Main PID: 20415 (mysqld_safe)
CGroup: /system.slice/mariadb.service
├─20415 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
└─20577 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/m...
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: MySQL manual for more instructions.
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: Please report any problems at http://mariadb.org/jira
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: The latest information about MariaDB is available at http://mariadb.org/.
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: You can find additional information about the MySQL part at:
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: http://dev.mysql.com
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: Consider joining MariaDB's strong and vibrant community:
Dec 12 15:41:58 cc-b6-it89lnx mariadb-prepare-db-dir[20336]: https://mariadb.org/get-involved/
Dec 12 15:41:59 cc-b6-it89lnx mysqld_safe[20415]: 181212 15:41:59 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'.
Dec 12 15:41:59 cc-b6-it89lnx mysqld_safe[20415]: 181212 15:41:59 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Dec 12 15:42:01 cc-b6-it89lnx systemd[1]: Started MariaDB database server.
В случае успешного запуска MariaDB получаем подобный ответ сервера.
Дла организации безопасного подключения к MariaDB необходимо задать пароль администратора.
#mysql_secure_installation
Далее выполняем проверку функционирования MariaDB, для этого необходимо подключится к серверу и (например) получить переменные окружения:
mysql -u root -p
MariaDB > show variables;
MariaDB > quit
5. Установка пакета PhpMyAdmin для организации администрирования MySQL через графический интерфейс
Для установки необходимо подключить rpmforge репозиторий:
#yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
Установка PhpMyAdmin
#yum install phpmyadmin
Необходимо разрешить подключения с удаленных компьютеров. Для этого в файле phpmyadmin.conf (в папке conf.d с конфигурационнымими файлами Apache) требуется закомментировать строки:
#Order Deny,Allow
#Deny from all
#Allow from 127.0.0.1
затем перезагрузим веб-сервер сервер
#systemctl restart httpd
6. Установка сервисов LAMP в автозагрузку
#systemctl enable mariadb
#systemctl enable httpd

 (online network tools and utilities) |
| |