Jak zainstalować Apache, MySQL & PHP (LAMP) na Centos 8

Jak zainstalować Apache, MySQL & PHP (LAMP) na Centos 8

LAMPA jest akronimami Linux, Apache, MySQL i PHP. Apache to serwer WWW, który obsługuje pliki w stosunku do protokołu HTTP. MySQL to popularny serwer bazy danych. PHP to język programowania używany do tworzenia aplikacji internetowych. Korzystając z tych aplikacji, możemy utworzyć pełnoprawny serwer WWW. Najczęstszym sposobem uruchamiania aplikacji PHP z Apache jest użycie modułu mod_php. Również dobrą alternatywą jest użycie PHP-FPM, które ma kilka zalet w tym zakresie. Domyślna instalacja na CentOS 8 używa php-fpm do przetwarzania plików php.

Ten samouczek pomoże Ci zainstalować i skonfigurować LAMP (Linux, Apache, MySQL i PHP) w systemach Centos 8 i Rhel 8 Linux.

Przydatny link:

  • Konfiguracja zaszyfrowana SSL z Apache na Centos 8
  • Jak skonfigurować tylko użytkownik SFTP w Centos 8

Wymagania wstępne

  • Nowo zainstalowana maszyna CentOS 8.
  • Ukończ początkowy konfiguracja serwera
  • Dostęp do skorupy z przywilejami sudo

Krok 1 - Zainstaluj Apache

Pakiety serwera WWW Apache są dostępne w domyślnym repozytorium AppStream w Centos 8. Wystarczy zaktualizować pamięć podręczną DNF i zainstalować pakiety za pomocą następujących poleceń.

sudo dnf aktualizacja sudo dnf instaluj httpd httpd-tools 

Pakiet MOD_SSL zapewnia funkcjonalność do korzystania z certyfikatu SSL dla bezpiecznego HTTP. Po instalacji włącz usługę HTTPD i uruchom.

sudo systemctl włącz HTTPD.serwis sudo systemctl start httpd.praca 

Teraz sprawdź status usługi Apache:

SUDO SystemCtl Status HTTPD.praca 

Wyjście:

● Httpd.Usługa - załadowany serwer Apache HTTP: załadowany (/usr/lib/systemd/system/httpd.praca; włączony; PREDETOR PREDET: Wyłączony) Drop-in:/usr/lib/systemd/system/httpd.praca.D └oka Php-Fpm.Con Con Active: Active (działający) od soboty 2020-03-22 04:27:24 EDT; 5s temu Dokumenty: człowiek: httpd.Service (8) Główny PID: 8644 (HTTPD) Status: „Rozpoczęcie, słuchanie na: Port 80” Zadania: 213 (limit: 8918) Pamięć: 21.5M CGroup: /System.Slice/httpd.Service ├─8644/usr/sbin/httpd -dforeground ├─8650/usr/sbin/httpd -dforeground ├─8651/usr/sbin/httpd -dforeground ├wielka /sbin/httpd -dforeground 22 marca 04:27:23 Tecadmin Systemd [1]: Uruchamianie serwera Apache HTTP… 22 04:27:24 Tecadmin Systemd [1]: Rozpoczął Apache Server HTTP Server Server Server. 22 marca 04:27:24 TECADMIN HTTPD [8644]: Skonfigurowany serwer, słuchanie na: Port 80 

Krok 2 - Zainstaluj MySQL Server

Najnowsze pakiety MySQL 8 są dostępne w ramach repozytorium AppStrem w Centos 8. Użyj następującego polecenia, aby zainstalować serwer MySQL, w tym wymagane pakiety w systemie.

sudo dnf -y instalacja @Mysql 

Po zakończeniu instalacji włącz usługę MySQL do automatycznego startowania na start systemu. Po raz pierwszy rozpocznij obsługę ręcznie.

sudo systemctl włącz MySQLD.serwis sudo systemctl start mysqld.praca 

Następnie sprawdź aktualny status usługi za pomocą następującego polecenia:

SUDO SYSTEMCTL Status Mysqld.praca 
● Mysqld.Service - MySQL 8.0 Załadowany serwer bazy danych: załadowany (/usr/lib/systemd/system/mysqld.praca; włączony; PREDERTOR PRESET: niepełnosprawny) Active: Active (Uruchamianie) od soboty 2020-03-22 02:49:33 EDT; 5min temu proces: 5841 execTartpost =/usr/libexec/mysql-check-upgrade (kod = exited, status = 0/Success) Proces: 5706 execTartpre =/usr/libexec/mysql-prepare-db-dir mysqld mysqld.Service (kod = wyjazd, status = 0/Success) Proces: 5682 execStartPre =/usr/libexec/mysql-check-socket (kod = wyjście, status = 0/Success) Główny PID: 5798 (MySQLD) Status: „Serwer IS IS Zadania operacyjne: 38 (limit: 8918) Pamięć: 442.1M CGroup: /System.Slice/Mysqld.Service └─5798/usr/libexec/mysqld -oparta na AR =/usr Mar 22 02:48:42 Tecadmin Systemd [1]: Uruchomienie MySQL 8.0 Serwer bazy danych… 22 02:48:45 TECADMIN MYSQL-PREPARE-DB-DIR [5706]: Inicjowanie bazy danych MySQL 22 02:49:33 TECADMIN SYSTEMD [1]: Rozpoczęcie MySQL 8.0 serwer bazy danych. 

Instalacja MySQL została zakończona. Teraz możesz podłączyć serwer MySQL bez hasła, ale zalecamy zabezpieczenie instalacji MySQL. Pakiety MySQL zapewniają polecenie mysql_secure_installation, aby zastosować bezpieczeństwo. Po prostu uruchom poniższe polecenie na terminalu:

sudo mysql_secure_instalation 

i postępuj zgodnie z instrukcjami na ekranie. Poniżej znajdują się szczegóły, które wymagają wprowadzania użytkownika.

  • Naciśnij y | y dla tak, każdy inny klucz dla nie: y
  • Wprowadź 0 = niski, 1 = średni i 2 = silny: 2
  • Nowe hasło: [Wprowadź tutaj mocne hasło]
  • Wprowadź ponownie nowe hasło: Wpisz hasło tutaj
  • Czy chcesz kontynuować podane hasło?(Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y
  • Usuń anonimowych użytkowników? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y
  • Zdalnie odrzucaj logowanie root? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y
  • Usuń testową bazę danych i dostęp do niej? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y
  • Załaduj teraz tabele uprawnień? (Naciśnij Y | Y dla tak, każdy inny klucz dla nie): y

Krok 3 - Zainstaluj PHP

Repozytorium REMI zawiera najnowsze pakiety PHP dla systemu Linux Centos 8. Przede wszystkim musisz dodać repozytorium REMI do swojego systemu. Po prostu wykonaj następujące polecenie, aby dodać repozytorium.

sudo dnf instaluj dnf-piutils http: // rpms.remirepo.Net/Enterprise/Remi-Rulease-8.RPM 

Następnie włącz wymagany moduł DNF do instalacji PHP. Tutaj umożliwiamy moduł do instalacji PHP 7.4. Możesz to zmienić na php 7.3 lub PHP 7.2 Zgodnie z Twoimi wymaganiami.

moduł modułu sudo dnf moduł sudo dnf Włącz PHP: RESI-7.4 

Po włączeniu repozytorium w systemie. Zainstaluj pakiety PHP wraz z wymaganymi modułami PHP.

sudo dnf instaluj php php-mysqlnd 

Wiele musi również zainstalować inne wymagane moduły PHP zgodnie z wymaganiami aplikacji. Poniższe polecenie zainstaluje kilka często używanych modułów PHP:

DNF Zainstaluj php-gd php-zip php-mcrypt php-json php-xml php-gettext php-curl php-intl 

Krok 4 - Utwórz Apache VirtualHost

Instalowane są wszystkie pakiety wymagane do środowiska lampy. Teraz utwórz wirtualny host Apache. Domyślnie Apache używa PHP-FPM do przetwarzania plików PHP w systemie Centos 8.

Utwórz i edytuj wirtualny plik konfiguracji hosta w ulubionym edytorze tekstu:

sudo vim/etc/httpd/conf.D/tecadmin.przykład.internet.conf 

Dodaj następującą zawartość w pliku konfiguracyjnym. Upewnij się, że zmieniają wymagane parametry.

ServerAdmin [email protected] Documentroot/var/www/html Servername Tecadmin.przykład.Net Serveralias www.tecadmin.przykład.Dzienniki błędów netto/tecadmin.netto.Zaloguj dzienniki CustomLog/Tecadmin.dostęp do sieci.Log łącznie
12345678910 ServerAdmin [email protected] Documentroot/var/www/html Servername Tecadmin.przykład.Net Serveralias www.tecadmin.przykład.Dzienniki błędów netto/tecadmin.netto.Zaloguj dzienniki CustomLog/Tecadmin.dostęp do sieci.Log łącznie

Zapisz plik konfiguracyjny wirtualnego hosta i ponownie załaduj Apache, aby zastosować zmiany.

sudo systemctl restart httpd.praca 

Przydatny link:

  • Konfiguracja zaszyfrowana SSL z Apache na Centos 8

Krok 5 - Zezwalaj na porty w zaporze ogniowej

Serwer Centos 8 Linux jest gotowy do obsługi aplikacji nad środowiskiem lampy. Jeśli Twój system ma instalowane zapory ANS, musisz zezwolić na porty Apache. Umożliwi to użytkownikom sieci dostęp do aplikacji internetowej ze zdalnych systemów.

Następujące polecenia otworzą dla Ciebie wymagane porty.

sudo firewall-cmd --zone = public --Permanent --add-service = http sudo firewall-cmd --zone = public --Permanent --add-service = https sudo firewall-cmd--reload 

Przydatny link:

  • Co to jest Firewalld i jak zaimplementować w Linux

Krok 6 - Konfiguracja testu

Wszystkie zrobione. Aby przetestować środowisko, utwórz skrypt PHP z phpinfo () funkcjonować. Umieść ten plik w root dokumentu swojego serwera. Użyj poniższego polecenia, aby to zrobić.

Echo "">/var/www/html/info.php 

Następnie dostęp do informacji.PHP za pomocą adresu IP serwera (dla domyślnego VirtualHost) dla skonfigurowanej domeny w Apache VirtualHost.

http: // tecadmin.przykład.Net/Info.php 

Wniosek

Z powodzeniem skonfigurowałeś środowisko lampy w systemie Centos 8 lub Rhel 8 Linux. Następnie możesz zainstalować phpMyAdmin w swoim systemie.