Nginx opbauen mat MariaDB a PHP/PHP-FPM op Fedora 24 Server an Workstation


Dir musst wahrscheinlech d'Fedora 24 Server Editioun op Ärer Maschinn installéiert hunn an Dir sidd eifreg a freet Iech e Webserver opzestellen fir Websäiten a Webapplikatiounen ze lafen. Kuckt net méi wäit, well mir wäerten dat alles hei maachen, mat einfachen an einfache Schrëtt, déi Dir um Enn wäert schätzen.

An dësem Guide, wäerte mir duerch déi verschidde Schrëtt lafen wéi Dir LEMP Stack op Ärem Fedora 24 Webserver installéiere kënnt. Ähnlech wéi LAMP, awer ënner LEMP, benotze mir Nginx Webserver.

Schrëtt 1: Update System Packagen

Dir kënnt ufänken andeems Dir Är Systempakete wéi follegt aktualiséiert:

# dnf update

Wann dat fäerdeg ass, fuert weider fir d'Komposit LEMP Packagen z'installéieren.

Schrëtt 2: Installéieren Nginx Web Server

Nginx ass eng Alternativ zum Apache Webserver, et ass liicht Gewiicht a verbraucht manner Systemressource dofir seng héich Leeschtung, Stabilitéit a Flexibilitéit an Enterprise Produktiounsëmfeld.

Fir Nginx op Fedora 24 z'installéieren, gitt de Kommando hei drënner:

# dnf install nginx  

Wann d'Installatioun fäerdeg ass, musst Dir den Nginx Service op Ärem System verwalten. Als éischt musst Dir et setzen fir automatesch bei der Startzäit unzefänken andeems Dir de Kommando hei drënner leeft:

# systemctl enable nginx.service

Start dann de Service wéi follegt:
# systemctl starten nginx.service

Als nächst, kontrolléiert fir ze kucken datt den Nginx Server leeft, Dir kënnt de Kommando hei ënnen erausginn fir dat ze maachen:

# systemctl status nginx.service

Fir Ären Nginx Webserver iwwer HTTP/HTTPS Protokoll ze gesinn, musst Dir Zougang zu deem duerch d'System Firewall erlaben. Fir dat ze maachen, lafen déi folgend Kommandoen:

# firewall-cmd --permanent --add-service=http
# firewall-cmd --permanent --add-service=https

Da lued d'System Firewall Konfiguratiounen nei fir déi uewe genannte Ännerunge wéi follegt auszeféieren:

# systemctl reload firewalld

Gitt elo weider fir Är Nginx server_name Direktiv ze setzen, benotzt Äre Liiblingseditor, öffnen d'Datei /etc/nginx/nginx.conf a fann d'Konfiguratiounsdirektiv wéi gewisen:

server_name server-ip-address;

Notiz: Den Nginx Dokumentverzeichnis root ass /usr/share/nginx/html, an dat ass wou Dir all Är Webdateien placéiere kënnt.

Eng méi wichteg Saach fir ënner der Nginx Installatioun ze maachen ass ze kontrolléieren ob d'Nginx Installatioun Index Säit an Ärem Webbrowser luede kann, also öffnen Äre Webbrowser a gitt d'URL:

http://server-ip-address

Dir sollt fäeg sinn dës Säit hei ënnen ze gesinn:

Schrëtt 3: Installéiert MariaDB Server

MariaDB ass eng Gabel vum bekannteste MySQL relationalen Datebankserver, fir MariaDB op Fedora 24 Server z'installéieren, gitt de Kommando hei drënner:

# dnf install mariadb-server

Nodeems Dir d'MariaDB Installatioun ofgeschloss hutt, musst Dir de Service aktivéieren, starten a verifizéieren andeems Dir folgend Serie vu Kommandoen ausféiert.

# systemctl enable mariadb-service  
# systemctl start mariadb-service 
# systemctl status mariadb-service  

Elo ass et Zäit Är MariaDB Installatioun mat dem folgenden Kommando ze sécheren:

# mysql_secure_installation

Nodeems Dir uewe Kommando ausgefouert hutt, kritt Dir e puer Froen wéi follegt:

Enter current password for root(enter for none): Here, Simply press [Enter]
Next you will be asked to set a root user password for your MariaDB server.
Set root password? [Y/n]: y and hit [Enter]
New password: Enter a new password for root user
Re-enter new password: Re-enter the above password 
Remove anonymous users? [Y/n]: y to remove anonymous users
It is not always good to keep your system open to remote access by root user, in case an attacker lands on your root user password, he/she can cause damage to your system. 
Disallow root login remotely? [Y/n]: y to prevent remote access for root user. 
Remove test database and access to it? [Y/n]: y to remove the test database
Finally, you need to reload privileges tables on your database server for the above changes to take effect.
Reload privileges tables now? [Y/n]: y to reload privileges tables 

Schrëtt 4: Installéiere PHP a Moduler

Fir PHP op Fedora 24 zesumme mat senge Moduler z'installéieren, benotzt de Kommando hei drënner:

# dnf install php php-commom php-fpm php-mysql php-gd

Elo datt PHP an e puer PHP Moduler d'Installatioun ofgeschloss hunn, musst Dir PHP konfiguréieren fir datt Dir PHP Dateien ausféiert.

Par défaut ass PHP-FPM konfiguréiert fir mam Apache Webserver benotzt ze ginn, awer fir eise Fall hei benotze mir Nginx Webserver. Dofir musse mir dës Astellung an de Schrëtt hei ënnen änneren:

Benotzt Äre Liiblingseditor, öffnen d'Datei /etc/php-fpm.d/www.conf wéi follegt:

# vi /etc/php-fpm.d/www.conf

Dann änneren d'Wäerter vum Benotzer a Grupp vun Apache op nginx an de folgende Linnen:

; 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

Dann nei starten PHP-FPM an Nginx Webserver fir d'Ännerungen hei uewen auszeféieren:

# systemctl restart php-fpm.services
# systemctl restart nginx.services

Duerno, bestätegt datt se lafen, ginn d'Befehle hei ënnen aus:

# systemctl status php-fpm.services
# systemctl status nginx.services

Elo kënnt Dir alles testen, andeems Dir Äre Liiblingseditor benotzt, e Fichier mam Numm info.php an Ärem Nginx Root Verzeichnis erstellen wéi follegt:

# vi /usr/share/nginx/html/info.php

Füügt déi folgend Zeilen an der Datei, späichert et a gitt eraus.

<?php
phpinfo()
?>

Dann öffnen Äre Webbrowser a gitt déi folgend URL fir d'PHP Informatioun z'iwwerpréiwen:

http://server-ip-address/info.php

Zu dësem Zäitpunkt musst Dir de LEMP Stack op Ärem Fedora 24 Server erfollegräich installéiert a konfiguréiert hunn. An e puer Fäll, e puer vun iech mussen Feeler begéint hunn oder wëllt méi Erklärung betreffend eng Fro vun Suerg, Dir kënnt e Commentaire an der Kommentar Rubrik hei drënner hannerlooss a mir wäerten zesummen Léisungen fannen.