Ten poradnik wyjaśnia, jak zainstalować najnowszą wersję Apache , MySQL 8 lub MariaDB 10 i PHP 7 wraz z wymaganymi modułami PHP na RHEL / CentOS 7/6 i Fedora 24-29 .
Ta kombinacja systemu operacyjnego (Linux ) z serwerem internetowym (Apache ), serwer bazy danych (MariaDB/MySQL ) i język skryptowy po stronie serwera (PHP ) jest znany jako LAMPA stos.
Don' t nie trafić: Jak zainstalować Nginx 1.15, MariaDB 10 i PHP 7 na CentOS 7
Od września 2015 r. PHP 5.4 nie jest już obsługiwany przez zespół PHP i osiągnął koniec życia, nadal PHP 5.4 jest dostarczany z RHEL/CentOS 7/6 z drobną zmianą wersji, a Red Hat ją obsługuje, więc aktualizacja do wyższej wersji nie jest wymagana. Jednak zdecydowanie zaleca się uaktualnienie PHP 5.4 do PHP 5.5+ dla większego bezpieczeństwa i wydajności.
Oto, z czym jest dostarczana Twoja obecna dystrybucja Linuksa:
Aktualna wersja PHP | RHEL/CentOS 7 | RHEL/CentOS 6 |
---|---|---|
7.3 | 5.4 | 5.3 |
W tym celu włączymy EPEL i Remi repozytorium i używaj yum i dnf (nowego narzędzia do zarządzania pakietami dostępnego w Fedorze).
Krok 1:Instalowanie repozytorium EPEL i Remi
EPEL (Dodatkowe pakiety dla Enterprise Linux ) to repozytorium oparte na społeczności, oferujące dodatkowe pakiety oprogramowania dla dystrybucji Linuksa opartych na RHEL.
Remi to repozytorium, w którym można znaleźć najnowsze wersje PHP stos (w pełni funkcjonalny) do instalacji w dystrybucjach Fedora i Enterprise Linux.
W RHEL/CentOS 7
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm ------ For RHEL 7 Only ------ # subscription-manager repos --enable=rhel-7-server-optional-rpms
W RHEL/CentOS 6
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ------ For RHEL 6 Only ------ # subscription-manager repos --enable=rhel-6-server-optional-rpms
W Fedorze 24-29
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-29.rpm [On Fedora 29] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-28.rpm [On Fedora 28] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-27.rpm [On Fedora 27] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-26.rpm [On Fedora 26] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-25.rpm [On Fedora 25] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-24.rpm [On Fedora 24]
Krok 2:Instalacja serwera WWW Apache
Apacze to bezpłatny i otwarty serwer WWW HTTP, który działa w większości systemów operacyjnych opartych na systemie UNIX, a także w systemie Windows. Jako taki może być używany do obsługi statycznych stron internetowych i obsługi zawartości dynamicznej. Ostatnie raporty pokazują, że Apache jest serwerem numer jeden używanym w witrynach i komputerach z dostępem do Internetu.
Aby zainstalować Apache serwer WWW, najpierw zaktualizuj pakiety oprogramowania systemowego i zainstaluj je za pomocą następujących poleceń.
# yum -y update # yum install httpd
Raz Apache zainstalowany serwer WWW, możesz włączyć automatyczne uruchamianie przy starcie systemu.
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
Jeśli używasz firewalla , upewnij się, że zezwalasz na ruch Apache na zaporze.
# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --zone=public --permanent --add-service=https # firewall-cmd --reload
Krok 3:Instalowanie PHP za pomocą repozytorium Remi
PHP (Preprocesor hipertekstu ) to bezpłatny i otwarty język skryptowy po stronie serwera, który najlepiej nadaje się do tworzenia stron internetowych. Może być używany do tworzenia dynamicznych stron internetowych dla witryny i najczęściej znajduje się na serwerach *nix. Jedną z zalet PHP jest to, że można go łatwo rozszerzać za pomocą szerokiej gamy modułów.
Aby zainstalować PHP , najpierw musisz włączyć Remi repozytorium, instalując yum-utils
, zbiór przydatnych programów do zarządzania repozytoriami i pakietami yum.
# yum install yum-utils
Po zainstalowaniu możesz użyć yum-config-manager dostarczone przez yum-utils
aby włączyć repozytorium Remi jako domyślne repozytorium do instalowania różnych wersji PHP, jak pokazano.
Na przykład, aby zainstalować PHP 7.x wersji, użyj następującego polecenia.
------------- On CentOS & RHEL ------------- # yum-config-manager --enable remi-php70 && yum install php [Install PHP 7.0] # yum-config-manager --enable remi-php71 && yum install php [Install PHP 7.1] # yum-config-manager --enable remi-php72 && yum install php [Install PHP 7.2] # yum-config-manager --enable remi-php73 && yum install php [Install PHP 7.3] ------------- On Fedora ------------- # dnf --enablerepo=remi install php70 [Install PHP 7.0] # dnf --enablerepo=remi install php71 [Install PHP 7.1] # dnf --enablerepo=remi install php72 [Install PHP 7.2] # dnf --enablerepo=remi install php73 [Install PHP 7.3]
Następnie w tym artykule zainstalujemy wszystkie poniższe moduły PHP. Możesz wyszukać więcej modułów związanych z PHP (być może w celu zintegrowania określonej funkcjonalności, której potrzebują Twoje aplikacje internetowe) za pomocą następującego polecenia:
------ RHEL/CentOS 7/6------ # yum search all php ------ Fedora ------ # dnf search all php
Niezależnie od dystrybucji, powyższe polecenia zwracają listę pakietów w aktualnie włączonych repozytoriach zawierających słowo php
w nazwie pakietu i/lub opisie.
Oto pakiety, które zainstalujemy. Pamiętaj, że MySQL złącza (PHP, Perl, Python, Java itp.) będą działać bez zmian z MariaDB ponieważ oba systemy używają tego samego protokołu klienta, a biblioteki klienta są kompatybilne binarnie.
- MariaDB/MySQL (php-mysql) – dynamiczny obiekt współdzielony, który doda obsługę MariaDB do PHP.
- PostgreSQL (php-pgsql) – Obsługa bazy danych PostgreSQL dla PHP.
- MongoDB (php-pecl-mongo) – Interfejs do komunikacji z bazą danych MongoDB w PHP.
- Ogólny (php-pdo) – Dynamiczny obiekt współdzielony, który doda warstwę abstrakcji dostępu do bazy danych do PHP.
- Memcache (php-pecl-memcache) – Memcached to demon buforujący zaprojektowany specjalnie dla dynamicznych aplikacji internetowych w celu zmniejszenia obciążenia bazy danych poprzez przechowywanie obiektów w pamięci.
- Memcached (php-pecl-memcached) – Rozszerzenie, które korzysta z biblioteki libmemcached, aby zapewnić API do komunikacji z serwerami memcached.
- GD (php-gd) – Dynamiczny obiekt udostępniania, który dodaje obsługę korzystania z biblioteki graficznej gd do PHP.
- XML (php-xml) – Dynamiczny obiekt współdzielony, który dodaje obsługę PHP do manipulowania dokumentami XML.
- MBString (php-mbstring) – Rozszerzenie do obsługi wielobajtowych ciągów w aplikacjach PHP.
- MCrypt (php-mcrypt) – Biblioteka Mcrypt dla skryptów PHP.
- APC (php-pecl-apcu) – Moduł APC używany do optymalizacji i buforowania kodu PHP.
- CLI (php-cli) – Interfejs wiersza poleceń dla PHP.
- GRUSZKA (php-gruszka) – Struktura repozytorium aplikacji dla PHP.
Zainstaluj poniższe niezbędne moduły PHP za pomocą poniższego polecenia.
------ On 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 ------ On 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
Krok 4:Instalowanie bazy danych MySQL lub MariaDB
W tej sekcji pokażemy instalację obu baz danych MySQL i MariaDB , więc od Ciebie zależy, co wybrać w oparciu o Twoje wymagania.
Instalacja serwera bazy danych MySQL 8
MySQL to jeden z najpopularniejszych na świecie systemów zarządzania relacyjnymi bazami danych typu open source (RDBMS), który obsługuje dowolny serwer, zapewniając wielu użytkownikom dostęp do wielu baz danych. MySQL działa z Apache.
Aby zainstalować najnowszą wersję MySQL 8.0 wersji, zainstalujemy i włączymy oficjalne MySQL Yum repozytorium oprogramowania za pomocą następujących poleceń.
# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm [On RHEL/CentOS 7] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm [On RHEL/CentOS 6] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc29-1.noarch.rpm [On Fedora 29] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc28-1.noarch.rpm [On Fedora 29] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc27-1.noarch.rpm [On Fedora 29] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc26-1.noarch.rpm [On Fedora 29] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc25-1.noarch.rpm [On Fedora 29] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc24-1.noarch.rpm [On Fedora 29]
Po zainstalowaniu MySQL Yum repozytorium oprogramowania dla platformy Linux, teraz zainstaluj najnowszą wersję MySQL (obecnie 8.0 ) za pomocą następującego polecenia.
# yum install mysql-community-server [On RHEL/CentOS] # dnf install mysql-community-server [On Fedora]
Po udanej instalacji MySQL nadszedł czas, aby uruchomić serwer MySQL za pomocą następującego polecenia.
# service mysqld start
Sprawdź nasz artykuł o tym, jak zabezpieczyć instalację bazy danych MySQL 8.
Instalowanie serwera bazy danych MariaDB 10
MariaDB to rozwidlenie znanego MySQL, jednego z najpopularniejszych na świecie systemów zarządzania relacyjną bazą danych (RDBMS). Jest w całości rozwijany przez społeczność i jako taki ma pozostać FOSS i zgodny z GPL.
Jeśli jesteś lub byłeś użytkownikiem MySQL, migracja do MariaDB będzie bardzo prostym procesem:popularne polecenia do łączenia się, tworzenia kopii zapasowych i przywracania oraz zarządzania bazami danych są identyczne w obu systemach RDBMS.
W najnowszym RHEL/CentOS 7 dystrybucji, MariaDB jest zamiennikiem typu drop-in dla MySQL i w RHEL/CentOS 6 MySQL pozostaje taki sam i nie możesz instalować MariaDB na RHEL/CentOS 6 z repozytorium domyślnego, ale możesz zainstalować MariaDB za pomocą oficjalnego repozytorium MariaDB.
Aby włączyć repozytorium MariaDB w RHEL/CentOS 7 dystrybucje, utwórz plik o nazwie /etc/yum.repos.d/mariadb.repo
o następującej treści:
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Uwaga :Jak wspomniałem powyżej, MariaDB można również zainstalować na RHEL/CentOS 6 używając oficjalnego repozytorium MariaDB, jak wspomniano powyżej.
Po włączeniu repozytorium MariaDB wykonaj następujące czynności:
------ On RHEL/CentOS 7 ------ # yum --enablerepo=remi install httpd MariaDB-client MariaDB-server ------ On Fedora ------ # dnf --enablerepo=remi install httpd MariaDB-client MariaDB-server
Krok 5:Włącz/uruchom Apache i MySQL/MariaDB
W systemie D
------ Enable Apache and MariaDB on Boot ------ # systemctl enable httpd # systemctl enable mariadb ------ Start Apache and MariaDB ------ # systemctl start httpd # systemctl start mariadb
W SysVinit
------ Enable Apache and MySQL on Boot ------ # chkconfig --levels 235 httpd on # chkconfig --levels 235 mysqld on ------ Start Apache and MySQL ------ # /etc/init.d/httpd start # /etc/init.d/mysqld start
Krok 6:Weryfikacja instalacji PHP
Pozostańmy przy klasycznym sposobie testowania PHP. Utwórz plik o nazwie test.php
pod /var/www/html i dodaj do niego następujące wiersze kodu.
phpinfo()
funkcja pokazuje wiele informacji o bieżącej instalacji PHP:
<?php phpinfo(); ?>
Teraz skieruj swoją przeglądarkę internetową na http://[server]/test.php
i sprawdź obecność zainstalowanych modułów i dodatkowego oprogramowania, przewijając stronę w dół (zastąp [server]
z Twoją domeną lub adresem IP Twojego serwera). Twój wynik powinien być podobny do:
Gratulacje! Masz teraz najnowszą działającą instalację LAMPY stos. Jeśli coś nie poszło zgodnie z oczekiwaniami, skontaktuj się z nami za pomocą poniższego formularza. Pytania i sugestie są również mile widziane.
Uwaga :możesz także zainstalować MariaDB w innych dystrybucjach, tworząc niestandardowe repozytorium zgodnie z instrukcjami podanymi tutaj.