Това ръководство с инструкции обяснява как да инсталирате най-новата версия на Apache , MySQL 8 или MariaDB 10 и PHP 7 заедно с необходимите PHP модули на RHEL / CentOS 7/6 и Fedora 24-29 .
Тази комбинация от операционната система (Linux ) с уеб сървъра (Apache ), сървър на база данни (MariaDB/MySQL ) и скриптов език от страна на сървъра (PHP ) е известен като ЛАМПА стек.
Не t Госпожица: Как да инсталирате Nginx 1.15, MariaDB 10 и PHP 7 на CentOS 7
От септември 2015 г., PHP 5.4 вече не се поддържа от PHP екипа и е достигнат до края на живота си, все още, PHP 5.4 се доставя сRHEL/CentOS 7/6 с незначителна промяна на версията и Red Hat го поддържа, така че не се изисква надграждане до по-висока версия. Въпреки това силно се препоръчва да надстроите своя PHP 5.4 до PHP 5.5+ за по-голяма сигурност и производителност.
Ето какво се доставя с текущата ви Linux дистрибуция:
Текуща версия на PHP | RHEL/CentOS 7 | RHEL/CentOS 6 |
---|---|---|
7.3 | 5.4 | 5.3 |
За да направим това, ще активираме EPEL и Реми хранилище и използвайте yum и dnf (новия инструмент за управление на пакети, наличен във Fedora).
Стъпка 1:Инсталиране на EPEL и Remi Repository
EPEL (Допълнителни пакети за Enterprise Linux ) е базирано в общността хранилище, предлагащо допълнителни софтуерни пакети за базирани на RHEL Linux дистрибуции.
Реми е хранилище, където можете да намерите най-новите версии на PHP стек (пълнофункционален) за инсталиране в дистрибуциите на Fedora и Enterprise Linux.
На RHEL/CentOS 7
# yum update &&yum install epel-release# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm------ Само за RHEL 7 ------# репозитории на мениджър на абонамент --enable=rhel-7-server-optional-rpms
На RHEL/CentOS 6
# yum update &&yum install epel-release# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm------ Само за RHEL 6 ------# репозитории на мениджър на абонамент --enable=rhel-6-server-optional-rpms
На Fedora 24-29
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-29.rpm [На Fedora 29 # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-28.rpm [На Fedora 28 # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-27.rpm [На Fedora 27 # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-26.rpm [На Fedora 26 # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-25.rpm [На Fedora 25 # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-24.rpm [На Fedora 24 ]
Стъпка 2:Инсталиране на Apache уеб сървър
Apache е безплатен HTTP уеб сървър с отворен код, който работи на повечето UNIX-базирани операционни системи, както и на Windows. Като такъв може да се използва за обслужване на статични уеб страници и за обработка на динамично съдържание. Последните доклади показват, че Apache е сървър номер едно, използван в уебсайтове и компютри с достъп до интернет.
За да инсталирате Apache уеб сървър, първо актуализирайте пакетите на системния софтуер и го инсталирайте с помощта на следните команди.
# yum -y update# yum install httpd
Веднъж Apache инсталиран уеб сървър, можете да започнете да го активирате за автоматично стартиране при стартиране на системата.
# systemctl start httpd# systemctl активира httpd# systemctl status httpd
Ако използвате firewalld , не забравяйте да разрешите трафика на Apache на защитната стена.
# firewall-cmd --zone=public --permanent --add-service=http# firewall-cmd --zone=public --permanent --add-service=https# firewall-cmd --reloadпредварително>Стъпка 3:Инсталиране на PHP с помощта на Remi Repository
PHP (Препроцесор за хипертекст ) е безплатен скриптов език с отворен код от страна на сървъра, който е най-подходящ за уеб разработка. Може да се използва за създаване на динамични уеб страници за уебсайт и най-често се намира в *nix сървъри. Едно от предимствата на PHP е, че е лесно разширяем чрез използването на голямо разнообразие от модули.
За да инсталирате PHP , първо трябва да активирате Remi хранилище, като инсталирате
yum-utils
, колекция от полезни програми за управление на yum хранилища и пакети.# yum install yum-utilsСлед като инсталирате, можете да използвате yum-config-manager предоставено от
yum-utils
за да активирате хранилището на Remi като хранилище по подразбиране за инсталиране на различни версии на PHP, както е показано.Например, за да инсталирате PHP 7.x версия, използвайте следната команда.
------------ На CentOS &RHEL ------------- # yum-config-manager --enable remi-php70 &&yum install php [Инсталиране на PHP 7.0 # yum-config-manager --enable remi-php71 &&yum install php [Инсталиране на PHP 7.1 # yum-config-manager --enable remi-php72 &&yum install php [Инсталиране на PHP 7.2 # yum-config-manager --enable remi-php73 &&yum install php [Инсталиране на PHP 7.3 ]------------На Fedora ------------- # dnf --enablerepo=remi install php70 [Инсталиране на PHP 7.0 ]# dnf --enablerepo=remi install php71 [Инсталиране на PHP 7.1 ]# dnf --enablerepo=remi install php72 [Инсталиране на PHP 7.2 ]# dnf --enablerepo=remi install php73 [Инсталиране на PHP 7.3 ]След това ще инсталираме всички следните PHP модули в тази статия. Можете да търсите още модули, свързани с PHP (може би за интегриране на конкретна функционалност, от която се нуждаят вашите уеб приложения) със следната команда:
------ RHEL/CentOS 7/6 ------# yum търсене във всички php ------ Fedora ------# dnf търси всички phpНезависимо от разпространението, горните команди връщат списъка с пакети в разрешените в момента хранилища, които включват думата
php
в името на пакета и/или описанието.Ето пакетите, които ще инсталираме. Моля, имайте предвид, че MySQL конекторите (PHP, Perl, Python, Java и др.) ще работят непроменени с MariaDB тъй като и двете системи използват един и същ клиентски протокол и клиентските библиотеки са двоично съвместими.
- MariaDB/MySQL (php-mysql) – динамичен споделен обект, който ще добави поддръжка на MariaDB към PHP.
- PostgreSQL (php-pgsql) – Поддръжка на база данни PostgreSQL за PHP.
- MongoDB (php-pecl-mongo) – Интерфейс за комуникация с базата данни MongoDB в PHP.
- Общ (php-pdo) – Динамичен споделен обект, който ще добави абстракционен слой за достъп до база данни към PHP.
- Memcache (php-pecl-memcache) – Memcached е демон за кеширане, създаден специално за динамични уеб приложения, за да намали натоварването на базата данни чрез съхраняване на обекти в паметта.
- Memcached (php-pecl-memcached) – Разширение, което използва библиотеката libmemcached за предоставяне на API за комуникация с memcached сървъри.
- GD (php-gd) – Динамичен обект за споделяне, който добавя поддръжка за използване на графичната библиотека gd към PHP.
- XML (php-xml) – Динамични споделени обекти, които добавят поддръжка към PHP за манипулиране на XML документи.
- MBString (php-mbstring) – Разширение за обработка на многобайтов низ в PHP приложения.
- MCrypt (php-mcrypt) – Библиотека Mcrypt за PHP скриптове.
- APC (php-pecl-apcu) – APC модул, използван за оптимизиране и кеширане на PHP код.
- CLI (php-cli) – Интерфейс на командния ред за PHP.
- КРУША (php-pear) – Рамка за хранилище на приложения за PHP.
Инсталирайте следните необходими PHP модули с командата по-долу.
------ На RHEL/CentOS 7/6 ------# yum --enablerepo=remi install php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear------ На Fedora ------# dnf --enablerepo=remi install php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pearСтъпка 4:Инсталиране на MySQL или MariaDB база данни
В този раздел ще ви покажем инсталирането на двете бази данни MySQL и MariaDB , така че зависи от вас какво да изберете въз основа на вашите изисквания.
Инсталиране на MySQL 8 сървър на база данни
MySQL е една от най-популярните в света системи за управление на релационни бази данни (RDBMS) с отворен код, която управлява всеки сървър, като предоставя достъп на множество потребители до множество бази данни. MySQL работи с Apache.
За да инсталирате най-новата MySQL 8.0 версия, ще инсталираме и активираме официалния MySQL Yum софтуерно хранилище, като използвате следните команди.
# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm [На RHEL/CentOS 7 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm [На RHEL/CentOS 6 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc29-1.noarch.rpm [На Fedora 29 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc28-1.noarch.rpm [На Fedora 29 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc27-1.noarch.rpm [На Fedora 29 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc26-1.noarch.rpm [На Fedora 29 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc25-1.noarch.rpm [На Fedora 29 # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc24-1.noarch.rpm [На Fedora 29 ]След инсталиране на MySQL Yum софтуерно хранилище за вашата Linux платформа, сега инсталирайте най-новата версия на MySQL (понастоящем 8.0 ) с помощта на следната команда.
# yum инсталирайте mysql-community-server [На RHEL/CentOS # dnf инсталирате mysql-community-server [На Fedora ]След успешна инсталация на MySQL е време да стартирате MySQL сървъра със следната команда.
# стартиране на mysqld услугаВижте нашата статия за това как да защитите инсталацията на базата данни на MySQL 8.
Инсталиране на MariaDB 10 сървър на база данни
MariaDB е разклонение на добре познатия MySQL, една от най-популярните в света система за управление на релационни бази данни (RDBMS). Той е изцяло разработен от общността и като такъв е предназначен да остане FOSS и съвместим с GPL.
Ако сте или сте били потребител на MySQL, мигрирането към MariaDB ще бъде много лесен процес:популярните команди за свързване, архивиране и възстановяване и управление на бази данни са идентични и в двете RDBMS.
В най-новата версия на RHEL/CentOS 7 дистрибуция, MariaDB е добавен заместител на MySQL и в RHEL/CentOS 6 MySQL остава същият и нямате право да инсталирате MariaDB на RHEL/CentOS 6 от хранилището по подразбиране, но можете да инсталирате MariaDB, като използвате официалното хранилище на MariaDB.
За да активирате хранилището на MariaDB на RHEL/CentOS 7 дистрибуции, създайте файл с име
/etc/yum.repos.d/mariadb.repo
със следното съдържание:[mariadb]name =MariaDBbaseurl =http://yum.mariadb.org/10.1/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1Забележка :Както казах по-горе, можете също да инсталирате MariaDB на RHEL/CentOS 6 използвайки официално хранилище на MariaDB, както е посочено по-горе.
След като активирате хранилището на MariaDB, направете:
------ На RHEL/CentOS 7 ------# yum --enablerepo=remi инсталирайте httpd MariaDB-клиент MariaDB-сървър------ На Fedora ------# dnf --enablerepo=remi инсталирайте httpd MariaDB-клиент MariaDB-сървърСтъпка 5:Активирайте/стартирайте Apache и MySQL/MariaDB
На SystemD
------ Активиране на Apache и MariaDB при зареждане ------# systemctl enable httpd# systemctl enable mariadb------ Стартирайте Apache и MariaDB ------# systemctl стартиране httpd# systemctl стартиране на mariadbНа SysVinit
------ Активиране на Apache и MySQL при стартиране ------# chkconfig --нива 235 httpd на# chkconfig --нива 235 mysqld на------ Стартирайте Apache и MySQL ------# /etc/init.d/httpd start# /etc/init.d/mysqld startСтъпка 6:Проверка на инсталацията на PHP
Нека се придържаме към класическия начин за тестване на PHP. Създайте файл, наречен
test.php
под /var/www/html и добавете към него следните редове код.
phpinfo()
функцията показва много информация за текущата инсталация на PHP:Сега насочете уеб браузъра си към
http://[server]/test.php
и проверете наличието на инсталираните модули и допълнителен софтуер, като превъртите надолу страницата (заменете[server]
с вашия домейн или IP адреса на вашия сървър). Вашият изход трябва да бъде подобен на:Честито! Вече имате най-новата работеща инсталация на ЛАМПА стек. Ако нещо не се е получило според очакванията, не се колебайте да се свържете с нас чрез формата по-долу. Въпроси и предложения също са добре дошли.
Забележка :можете също да инсталирате MariaDB в други дистрибуции, като създадете персонализирано хранилище, като следвате инструкциите, предоставени тук.