In diesem Tutorial zeigen wir Ihnen, wie Sie LEMP auf CentOS 6 installieren. Für diejenigen unter Ihnen, die es nicht wussten:Ein LEMP-Software-Stack ist eine Gruppe von Open-Source-Software normalerweise zusammen installiert, damit ein Server dynamische Websites und Web-Apps hosten kann. Dieser Begriff ist eigentlich ein Akronym, das das Linux-Betriebssystem darstellt, mit dem Nginx-Webserver (der die Apache-Komponente eines LAMP-Stacks ersetzt). Die Site-Daten werden darin gespeichert eine MySQL-Datenbank (unter Verwendung von MariaDB), und dynamische Inhalte werden von PHP verarbeitet.
In diesem Artikel wird davon ausgegangen, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach. Das werde ich tun zeigen Ihnen Schritt für Schritt die Installation von LEMP (Linux Nginx, MariaDB und PHP) auf dem CentOS 6-Server.
LEMP auf CentOS 6 installieren
Schritt 1. Zuerst müssen Sie das EPEL-Repository auf Ihrem System aktivieren und sicherstellen, dass alle Pakete auf dem neuesten Stand sind.
## RHEL/CentOS 6 64-Bit ## wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm
## RHEL/CentOS 6 32-Bit ## wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm
Schritt 2. Nginx installieren.
Wir werden Nginx mit yum mit dem folgenden Befehl installieren:
yum update yum install nginx
Starten Sie Nginx und fügen Sie es hinzu, damit es beim Systemstart automatisch gestartet wird mit:
service nginx start chkconfig nginx on
Sie können überprüfen, ob Nginx wirklich läuft, indem Sie Ihren bevorzugten Webbrowser öffnen und die URL http://Adresse Ihres Servers eingeben, und Sie müssen Port 80 öffnen um Ihren Webserver erreichbar zu machen:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT /etc/rc.d/init.d/iptables save
Schritt 3. Konfigurieren von Nginx und virtuellem Standardhost.
Schließlich müssen wir unsere virtuellen Nginx-Hosts konfigurieren. Dies ist viel einfacher zu konfigurieren als Apache. Schauen Sie sich die Konfiguration unten an, sie unterscheidet sich geringfügig von unserer Standardkonfiguration, aber ich erkläre die Änderungen unten:
nano /etc/nginx/conf.d/default.conf
# The default server # server { listen 80; server_name mydomain.com; location / { root /var/www/html; index index.php index.html index.htm; } error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root /var/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
Schritt 4. Installation von MySQL.
Installieren Sie MySQL mit dem folgenden Befehl, um mit der Installation zu beginnen:
yum install mysql mysql-server
Fügen Sie es danach zu Ihrem Systemstart hinzu und starten Sie den MySQL-Server mit den folgenden Befehlen:
chkconfig --levels 235 mysqld on service mysqld start
Standardmäßig ist MySQL nicht gehärtet. Sie können MySQL mit dem Skript mysql_secure_installation sichern. Sie sollten jeden Schritt sorgfältig lesen und unterschreiben, der ein Root-Passwort setzt, anonym entfernen Benutzer, verweigern Sie die Remote-Root-Anmeldung und entfernen Sie die Testdatenbank und den Zugriff auf sicheres MySQL:
mysql_secure_installation
Um sich bei MySQL anzumelden, verwenden Sie den folgenden Befehl (beachten Sie, dass es derselbe Befehl ist, den Sie verwenden würden, um sich bei einer MySQL-Datenbank anzumelden):
mysql -u root -p
Schritt 5. Installation von PHP.
Führen Sie schließlich die folgenden Befehle aus, um PHP zusammen mit anderen nützlichen Modulen zu installieren:
yum install php php-common php-fpm php-mysql
Möglicherweise möchten Sie einige andere PHP-Erweiterungen installieren, die für Ihre Anwendungen erforderlich sind. Nachfolgend finden Sie eine Liste der verfügbaren PHP-Module:
php-bcmath => A module for PHP applications using the bcmath library php-cli => Command-line interface for PHP php-common => Common files for PHP php-dba => A database abstraction layer module for PHP applications php-devel => Files needed for building PHP extensions php-embedded => PHP library for embedding in applications php-enchant => Human Language and Character Encoding Support php-gd => A module for PHP applications using the gd graphics library php-imap => A module for PHP applications that use IMAP php-intl => Internationalization extension for PHP applications php-ldap => A module for PHP applications that use LDAP php-mbstring => A module for PHP applications which need multi-byte string handling php-mysql => A module for PHP applications that use MySQL databases php-odbc => A module for PHP applications that use ODBC databases php-pdo => A database access abstraction module for PHP applications php-pear.noarch => PHP Extension and Application Repository framework php-pecl-apc => APC cache optimizing PHP intermediate code php-pecl-memcache => Extension to work with the Memcached caching daemon php-pgsql => A PostgreSQL database module for PHP php-process => Modules for PHP scripts using system process interfaces php-pspell => A module for PHP applications using pspell interfaces php-recode => A module for PHP applications using the recode library php-snmp => A module for PHP applications that query SNMP-managed devices php-soap => A module for PHP applications that use the SOAP protocol php-tidy => Standard PHP module provides tidy library support php-xml => A module for PHP applications which use XML php-xmlrpc => A module for PHP applications which use the XML-RPC protocol php-zts => Thread-safe PHP interpreter for use with the Apache HTTP Server
PHP-FPM konfigurieren:
nano /etc/php-fpm.d/www.conf
Ersetzen Sie die Werte von Benutzer und Gruppe durch Nginx wie unten:
; Unix user/group of processes ; Note: The user is mandatory. If the group is not set, the default user's group ; will be used. ; RPM: apache Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx
Starten Sie Nginx neu, damit alle Änderungen wirksam werden:
service nginx restart service php-fpm restart
Um PHP zu testen, erstellen Sie eine Testdatei namens info.php mit dem folgenden Inhalt. Speichern Sie die Datei und navigieren Sie dann zu ihr, um zu sehen, ob PHP funktioniert:
nano /var/www/html/info.php
<?php phpinfo(); ?>
Herzlichen Glückwunsch! Sie haben den LEMP-Stack erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von LAMP (Linux Nginx, MariaDB und PHP) auf einem CentOS 6-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen wenden Sie sich bitte an uns empfehlen Ihnen, die offiziellen Nginx-, MySQL- und PHP-Websites zu besuchen.