Как установить Apache, PHP 7.1 и MySQL на CentOS 7.3 (LAMP)
Это руководство существует для этих версий ОС
- СентОС 6.2
На этой странице
- 1 Предварительное примечание
- 2 Установка MySQL/MariaDB
- 3 Установка Apache
- 4 Установка PHP
- 4.1 Установите PHP 7.0 (необязательно)
- 4.2 Установите PHP 7.1 (необязательно)
В этом руководстве показано, как установить веб-сервер Apache на сервер CentOS 7 с поддержкой PHP (mod_php) и поддержкой MySQL. LAMP — это сокращение от Linux, Apache, MySQL, PHP.
В этом обновленном руководстве показана установка последних версий PHP (7.0 и 7.1) на CentOS 7.3.
1 Предварительное примечание
В этом руководстве я использую имя хоста server1.example.com с IP-адресом p 192.168.1.100. Эти настройки могут отличаться для вас, поэтому вам придется заменить их там, где это необходимо.
Я добавлю здесь репозиторий EPEL для установки последней версии phpMyAdmin следующим образом:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
yum -y install epel-releaseЧтобы редактировать файлы в оболочке, я установлю редактор nano. Если вы предпочитаете vi для редактирования файлов, пропустите этот шаг.
yum -y install nano
2 Установка MySQL/MariaDB
MariaDB — это форк MySQL оригинального разработчика MySQL Монти Видениуса. MariaDB совместима с MySQL, и я решил использовать здесь MariaDB вместо MySQL. Запустите эту команду, чтобы установить MariaDB с помощью yum:
yum -y install mariadb-server mariadb
Затем мы создаем ссылки для запуска системы для MySQL (чтобы MySQL запускался автоматически при каждой загрузке системы) и запускаем сервер MySQL:
systemctl start mariadb.service
systemctl enable mariadb.serviceУстановите пароли для корневой учетной записи MySQL:
mysql_secure_installation
[ ~]#
3 Установка Апача
CentOS 7 поставляется с apache 2.4. Apache напрямую доступен в виде пакета CentOS 7, поэтому мы можем установить его следующим образом:
yum -y install httpd
Вот скриншот процесса установки.
Теперь настройте вашу систему для запуска Apache во время загрузки...
systemctl start httpd.service
systemctl enable httpd.service
Чтобы иметь доступ к веб-серверу извне, мы должны открыть порты HTTP (80) и HTTPS (443) в брандмауэре. Брандмауэр по умолчанию в CentOS — это firewalld, который можно настроить с помощью команды firewalld-cmd.
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reloadТеперь укажите в браузере IP-адрес вашего сервера, в моем случае http://192.168.1.100, и вы должны увидеть страницу-заполнитель Apache:
4 Установка PHP
Версия PHP, поставляемая с CentOS, довольно старая (PHP 5.4), поэтому на этом этапе я покажу вам некоторые варианты установки более новых версий PHP, таких как PHP 7.0 или 7.1, из репозитория Remi.
Добавьте репозиторий Remi CentOS.
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Установите yum-utils, так как нам понадобится утилита yum-config-manager.
yum -y install yum-utils
и запустите yum update
yum update
Теперь вам нужно выбрать, какую версию PHP вы хотите использовать на сервере. Если вы хотите использовать PHP 5.4, перейдите к следующей команде. Чтобы установить PHP 7.0, следуйте командам из главы 4.1, а для PHP 7.1 используйте вместо этого главу 4.2.
Чтобы установить PHP 5.4, выполните следующую команду:
yum -y install php
4.1 Установите PHP 7.0 (необязательно)
Мы можем установить PHP 7.0 и модуль Apache PHP 7.0 следующим образом:
yum-config-manager --enable remi-php70
yum -y install php php-opcache
4.2 Установите PHP 7.1 (необязательно)
Если вы хотите вместо этого использовать PHP 7.1, используйте:
yum-config-manager --enable remi-php71
yum -y install php php-opcache
В этом примере и в загружаемой виртуальной машине я буду использовать PHP 7.1.
Мы должны перезапустить Apache, чтобы применить изменения:
systemctl restart httpd.service
5 Тестирование PHP/Получение подробной информации об установке PHP
Корень документа веб-сайта по умолчанию — /var/www/html. Мы создадим небольшой файл PHP (info.php) в этом каталоге и вызовем его в браузере, чтобы проверить установку PHP. Файл будет отображать множество полезных сведений о нашей установке PHP, например, установленную версию PHP.
nano /var/www/html/info.php
<?php phpinfo(); ?>
Теперь мы вызываем этот файл в браузере (например, http://192.168.1.100/info.php):
Как видите, PHP 7.1 работает и работает через обработчик Apache 2.0, как показано в строке API сервера. Если вы прокрутите дальше вниз, вы увидите все модули, которые уже включены в PHP. MySQL там не указан, что означает, что у нас пока нет поддержки MySQL в PHP.
6 Получение поддержки MySQL в PHP
Чтобы получить поддержку MySQL в PHP, мы можем установить пакет php71w-mysql. Это хорошая идея, чтобы установить некоторые другие модули PHP, а также они могут вам понадобиться для ваших приложений. Вы можете искать доступные модули PHP5 следующим образом:
yum search php
Выберите те, которые вам нужны, и установите их следующим образом:
yum -y install php-mysql
На следующем шаге я установлю некоторые распространенные модули PHP, которые требуются для систем CMS, таких как Wordpress, Joomla и Drupal:
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel
Теперь перезапустите веб-сервер Apache:
systemctl restart httpd.service
Теперь перезагрузите http://192.168.1.100/info.php в браузере и снова прокрутите вниз до раздела модулей. Теперь вы должны найти там множество новых модулей, таких как curl и т. д.:
Если вам больше не нужен вывод информации о php, удалите этот файл из соображений безопасности.
rm /var/www/html/info.php
7 Установка phpMyAdmin
phpMyAdmin — это веб-интерфейс, через который вы можете управлять базами данных MySQL.
Теперь phpMyAdmin можно установить следующим образом:yum -y install phpMyAdmin
Теперь настраиваем phpMyAdmin. Изменяем конфигурацию Apache, чтобы phpMyAdmin разрешал подключения не только с локального хоста (закомментировав строфу
и добавив строку Require all grant): nano /etc/httpd/conf.d/phpMyAdmin.conf
[...]
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
# <RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
# </RequireAny>
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
<Directory /usr/share/phpMyAdmin/> Options none AllowOverride Limit Require all granted </Directory>
[...]Далее меняем аутентификацию в phpMyAdmin с cookie на http:
nano /etc/phpMyAdmin/config.inc.php
[...] $cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)? [...]
Перезапустите Апач:
systemctl restart httpd.service
После этого вы можете получить доступ к phpMyAdmin по адресу http://192.168.1.100/phpmyadmin/:
8 Скачать как виртуальную машину
Эта установка доступна для загрузки виртуальной машины в формате ova/ovf (совместима с VMWare и Virtualbox) для подписчиков howtoforge.
Данные для входа в виртуальную машину
- Корневой пароль Linux: howtoforge.
- Корневой пароль MySQL: howtoforge
Измените оба пароля при первом входе.
- IP-адрес виртуальной машины: 192.168.1.100.
9 ссылок
Apache: http://www.phpmyadmin.net/