Instalacja LAMP (Linux, Apache, MariaDB, PHP/PhpMyAdmin) w RHEL/CentOS 7.0
On 5 grudnia, 2021 by adminPomijając wstęp o LAMP, jako że jestem pewien, że większość z was wie o co chodzi. Ten tutorial skoncentruje się na tym, jak zainstalować i skonfigurować słynny stos LAMP – Linux Apache, MariaDB, PHP, PhpMyAdmin – na ostatnim wydaniu Red Hat Enterprise Linux 7.0 i CentOS 7.0, z zaznaczeniem, że obie dystrybucje mają zaktualizowany demon httpd do Apache HTTP 2.4.
Wymagania
W zależności od używanej dystrybucji, RHEL lub CentOS 7.0, użyj poniższych linków, aby wykonać minimalną instalację systemu, używając statycznego adresu IP do konfiguracji sieci.
Dla RHEL 7.0
- Procedura instalacji RHEL 7.0
- Register and Enable Subscriptions/Repositories on RHEL 7.0
Dla systemu CentOS 7.0
- Procedura instalacji systemu CentOS 7.0
Krok 1: Zainstaluj serwer Apache z podstawowymi konfiguracjami
1. Po wykonaniu minimalnej instalacji systemu i skonfigurowaniu interfejsu sieciowego serwera ze statycznym adresem IP w systemie RHEL/CentOS 7.0, przejdź dalej i zainstaluj pakiet binarny usługi Apache 2.4 httpd z oficjalnych repozytoriów, używając następującego polecenia.
# yum install httpd
2. Po zakończeniu instalacji przez menedżera yum użyj następujących poleceń, aby zarządzać demonem Apache, ponieważ RHEL i CentOS 7.0 zmigrowały swoje skrypty inicjujące z SysV do systemd – możesz również użyć skryptów SysV i Apache w tym samym czasie do zarządzania usługą.
# systemctl status|start|stop|restart|reload httpdOR # service httpd status|start|stop|restart|reloadOR # apachectl configtest| graceful
3. W następnym kroku uruchom usługę Apache za pomocą skryptu inicjującego systemd i otwórz reguły zapory ogniowej RHEL/CentOS 7.0 za pomocą firewall-cmd, który jest domyślnym poleceniem do zarządzania iptables przez demona firewalld.
# firewall-cmd --add-service=http
UWAGA: Zauważ, że użycie tej reguły straci swój efekt po restarcie systemu lub usługi firewalld, ponieważ otwiera ona reguły on-fly, które nie są stosowane na stałe. Aby zastosować stałe reguły iptables na firewallu, użyj opcji -permanent i zrestartuj usługę firewalld, aby zaczęły obowiązywać.
# firewall-cmd --permanent --add-service=http# systemctl restart firewalld
Inne ważne opcje Firewalld są przedstawione poniżej:
# firewall-cmd --state# firewall-cmd --list-all# firewall-cmd --list-interfaces# firewall-cmd --get-service# firewall-cmd --query-service service_name# firewall-cmd --add-port=8080/tcp
4. Aby zweryfikować funkcjonalność Apache’a otwórz zdalną przeglądarkę i wpisz adres IP swojego serwera używając protokołu HTTP na URL (http://server_IP), a powinna pojawić się domyślna strona jak na poniższym zrzucie ekranu.
5. Na razie ścieżka Apache DocumentRoot jest ustawiona na /var/www/html, która domyślnie nie udostępnia żadnego pliku index. Jeśli chcesz zobaczyć listę katalogów w ścieżce DocumentRoot, otwórz plik konfiguracyjny powitalny Apache’a i ustaw deklarację Indexes od – do + w dyrektywie <LocationMach>, używając poniższego zrzutu ekranu jako przykładu.
# nano /etc/httpd/conf.d/welcome.conf
6. Zamknij plik, uruchom ponownie usługę Apache, aby odzwierciedlić zmiany i ponownie załaduj stronę przeglądarki, aby zobaczyć efekt końcowy.
# systemctl restart httpd
Krok 2: Zainstaluj obsługę PHP5 dla Apache
7. Przed zainstalowaniem obsługi języka dynamicznego PHP5 dla Apache, uzyskaj pełną listę dostępnych modułów i rozszerzeń PHP za pomocą następującego polecenia.
# yum search php
8. W zależności od rodzaju aplikacji, których chcesz używać, zainstaluj wymagane moduły PHP z powyższej listy, ale dla podstawowej obsługi MariaDB w PHP i PhpMyAdmin musisz zainstalować następujące moduły.
# yum install php php-mysql php-pdo php-gd php-mbstring
9. Aby uzyskać pełną listę informacji o PHP z poziomu przeglądarki, utwórz plik info.php na serwerze Apache Document Root za pomocą następującego polecenia z konta root, uruchom ponownie usługę httpd i skieruj przeglądarkę pod adres http://server_IP/info.php.
# echo "<?php phpinfo(); ?>" > /var/www/html/info.php# systemctl restart httpd
10. Jeśli otrzymasz błąd dotyczący daty i strefy czasowej PHP, otwórz plik konfiguracyjny php.ini, wyszukaj i odkomentuj deklarację date.timezone, dołącz swoją fizyczną lokalizację i uruchom ponownie demona Apache.
# nano /etc/php.ini
Zlokalizuj i zmień linię date.timezone, aby wyglądała tak jak poniżej, używając listy PHP Supported Timezones.
date.timezone = Continent/City
Krok 3: Zainstaluj i skonfiguruj bazę danych MariaDB
11. Red Hat Enterprise Linux/CentOS 7.0 zmienił MySQL na MariaDB jako domyślny system zarządzania bazą danych. Aby zainstalować bazę danych MariaDB, użyj następującego polecenia.
# yum install mariadb-server mariadb
12. Po zainstalowaniu pakietu MariaDB uruchom demona bazy danych i za pomocą skryptu mysql_secure_installation zabezpiecz bazę danych (ustaw hasło roota, wyłącz zdalne logowanie z roota, usuń testową bazę danych i usuń anonimowych użytkowników).
# systemctl start mariadb# mysql_secure_installation
13. Aby przetestować działanie bazy danych, zaloguj się do bazy MariaDB przy użyciu konta root i wyjdź, używając polecenia quit.
mysql -u root -pMariaDB > SHOW VARIABLES;MariaDB > quit
Krok 4: Zainstaluj PhpMyAdmin
14. Domyślnie oficjalne repozytoria RHEL 7.0 lub CentOS 7.0 nie dostarczają żadnego pakietu binarnego dla interfejsu WWW PhpMyAdmin. Jeśli nie czujesz się komfortowo, używając wiersza poleceń MySQL do zarządzania bazą danych, możesz zainstalować pakiet PhpMyAdmin, włączając repozytoria rpmforge systemu CentOS 7.0 za pomocą następującego polecenia.
# yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
Po włączeniu repozytorium rpmforge, następnie zainstaluj PhpMyAdmin.
# yum install phpmyadmin
15. Następnie skonfigurować PhpMyAdmin, aby zezwalał na połączenia ze zdalnych hostów, edytując plik phpmyadmin.conf, znajdujący się w katalogu Apache conf.d, komentując następujące linie.
# nano /etc/httpd/conf.d/phpmyadmin.conf
Użyj znaku # i zakomentuj tę linię.
# Order Deny,Allow# Deny from all# Allow from 127.0.0.1
16. Aby móc zalogować się do interfejsu WWW PhpMyAdmin przy użyciu metody uwierzytelniania cookie, dodaj łańcuch blowfish do pliku phpmyadmin config.inc.php jak na poniższym zrzucie ekranu używając opcji generate a secret string, uruchom ponownie usługę WWW Apache i skieruj przeglądarkę na adres URL http://server_IP/phpmyadmin/.
# nano /etc/httpd/conf.d/phpmyadmin.conf# systemctl restart httpd
Krok 5: Włącz LAMP System-wide
17. Jeśli chcesz, aby usługi MariaDB i Apache były automatycznie uruchamiane po restarcie, wydaj następujące polecenia, aby włączyć je w całym systemie.
# systemctl enable mariadb# systemctl enable httpd
To wszystko, co jest potrzebne do podstawowej instalacji LAMP na Red Hat Enterprise 7.0 lub CentOS 7.0. W następnej serii artykułów związanych ze stosem LAMP na CentOS/RHEL 7.0 omówimy sposoby tworzenia hostów wirtualnych, generowania certyfikatów i kluczy SSL oraz dodawania obsługi transakcji SSL dla serwera HTTP Apache.
.
Dodaj komentarz