Installationsanleitung: LAMP auf Linux CentOS 7 installieren

LAMP steht für Linux - Apache - MySQL - PHP und bildet ein Softwarepaket, wie es für das Bereitstellen von Webseiten im Internet benötigt wird.
In dieser Installationsanleitung zeige ich, wie Sie Apache, MySQL (MariaDB) und PHP7 auf CentOS 7 installieren.

1. Updaten Sie Ihr System.
[root@example ~]# yum update

Info

Das Standard Repository von CentOS 7 installiert nicht die neueste Version des Apache Webservers. Für die aktuelle Version können Sie das Repository von Punkt 2.1 verwenden.
2. Installieren Sie den Apache-Webserver.
[root@example ~]# yum install httpd
2.1 Installieren Sie die aktuelle Version des Apache-Webserver von iuscommunity.org.
[root@example ~]# yum install https://centos7.iuscommunity.org/ius-release.rpm
[root@example ~]# yum install httpd
3. Starten Sie den Dienst und stellen Sie sicher, dass er bei jedem Systemstart gestartet wird.
[root@example ~]# systemctl start httpd.service
[root@example ~]# systemctl enable httpd.service
4. Installieren Sie MariaDB.
[root@example ~]# yum install mariadb-server mariadb
5. Starten Sie den Dienst.
[root@example ~]# systemctl start mariadb

Info

Für ein Minimum an Sicherheit, sollten Sie sich für die MySQL-Secure-Installation Zeit nehmen und auf alle Punkte eingehen.
6. Konfiguration von MariaDB.
[root@example ~]# mysql_secure_installation
7. Stellen Sie sicher, dass der Dienst bei Systemstart gestartet wird.
[root@example ~]# systemctl enable mariadb.service

Info

Das Standard Repository von CentOS 7 installiert PHP 5. Für die Installation von PHP 7 können Sie das Repository von Punkt 8.1 verwenden.
8. Installieren Sie PHP.
[root@example ~]# yum install php php-mysql
8.1 Installieren Sie PHP 7 (7.0, 7.1, 7.2) von webtactic.com.
[root@example ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@example ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@example ~]# yum install php70w php70w-mysql
9. Neustart von Apache.
[root@example ~]# systemctl reload httpd

Info

Ist SELinux und/ oder die Firewall nicht oder nicht richtig konfiguriert, kann der Zugriff auf den Webserver verhindert werden.
10. Konfiguration der Firewall für den Zugriff über HTTP.
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=http
[root@example ~]# firewall-cmd --reload
11. Konfiguration der Firewall für den Zugriff über HTTPS.
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=https
[root@example ~]# firewall-cmd --reload
12. Konfiguration von SELinux für httpd.
[root@example ~]# /usr/sbin/setsebool -P httpd_can_network_connect 1

Info

Wenn Sie im Browser die lokale IP der Serverinstanz aufrufen, sehen Sie den Inhalt aus /var/www/html bzw. ein Testbild des Apache Webserver.