Поиск по сайту:

Как установить Apache, PHP 7.1 и MySQL на CentOS 7.3 (LAMP)


Это руководство существует для этих версий ОС

  • СентОС 6.2

На этой странице

  1. 1 Предварительное примечание
  2. 2 Установка MySQL/MariaDB
  3. 3 Установка Apache
  4. 4 Установка PHP
    1. 4.1 Установите PHP 7.0 (необязательно)
    2. 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/