Sådan installeres og konfigureres LEMP på Debian 8 (Jessie)


En af de mest almindelige grunde til at oprette et Linux-system er med det formål at være vært for et eller flere websteder. Ifølge NetCraft.com's undersøgelse fra februar 2016 af de 1 million travleste websteder i verden kører ca. 15,60% af dem på Nginx.

Parret med den høje sandsynlighed, at der er en form for dynamisk indhold, der serveres såvel som en slags database-back-end til webstederne, er muligheden for en administrator for at være i stand til at opsætte LEMP-servere meget gavnlig for jobsøgende og arbejdsgivere ligesom!

Denne tutorial gennemgår det grundlæggende i installation og konfiguration af en Linux-server (specifikt Debian 8 Jessie) til at fungere som en LEMP-server.

Fantastisk spørgsmål! Som med de fleste ting i computerverdenen er LEMP akronym for Linux, Nginx, MySQL og PHP.

Dette akronym bruges ofte til at henvise til softwaresamlinger på en webserver. Denne tutorial gennemgår først opsætning af LEMP, specielt MySQL og PHP.

Før du adskiller dig i systemets konfigurationsaspekter, er det vigtigt at vide om Nginx.

Nginx begyndte sit liv i 2002, da computerverdenen begyndte at indse, at websteder med ti tusind eller flere samtidige forbindelser var en meget reel mulighed, og som et resultat blev Nginx oprettet fra bunden for at løse dette problem.

Installation og konfiguration af MySQL og PHP

1. Dette første afsnit dækker Debian som en MySQL- og PHP-server. Linux-delen af LEMP-serveren skal allerede gøres ved at installere Debian! Hvis der imidlertid er behov for en guide til, hvordan du installerer Debian, skal du læse følgende artikel om TecMint:

  1. Installation af Debian 8 Jessie

Når Debian er klar til at gå, kan processen med at installere resten af den nødvendige software afsluttes med en hurtig kommando ved hjælp af 'apt' meta-packager.

# apt-get install mysql-server-5.5 php5-mysql php5

Afhængigt af systemhardwaren og internetforbindelsen kan denne proces tage noget tid. I skrivende stund krævede en ny Debian Jessie-installation med alle anvendte opdateringer ca. 70 MB arkiver fra arkiverne (ikke så slemt i betragtning af, hvad serveren vil gøre, når tingene er gjort)! Under installationsprocessen kan systemet bede brugeren om at indstille en SQL root-brugeradgangskode. Dette er forskelligt fra den faktiske rootbrugeres adgangskode, og af sikkerheds skyld bør det sandsynligvis forblive anderledes.

2. Når apt er færdig med at installere al softwaren, vil de grundlæggende tjenester være i gang. At stoppe her ville dog give en meget kort tutorial! Så lad os dykke lidt mere ned i konfigurationen af hvert af de installerede softwarestykker, der starter med MySQL.

3. Efter MySQL-installation anbefales det ofte, at SQL-serveren udfører nogle grundlæggende husholdninger på standardinstallationen. Dette opnås let med hjælp mysql_secure_installation .

Denne kommando køres simpelthen fra kommandolinjen og vil bede brugeren om at fjerne ting som anonyme brugere, teste databaser og fjerne muligheden for ekstern rodbruger-login til SQL-databasen.

# mysql_secure_installation

Denne kommando starter en interaktiv prompt, der stiller spørgsmål angående ovenstående emner. Da apt allerede har bedt om en MySQL-rodadgangskode, skal den adgangskode indtastes for at foretage ændringer. Da rodadgangskoden allerede var indstillet, kan Nej være svaret på prompten om at ændre rodadgangskoden på MySQL-serveren.

4. Det næste sæt spørgsmål vil være med hensyn til anonyme brugere, 'test' -databasen og rodadgang til databasen eksternt. Det er typisk sikkert at svare Ja på alle disse meddelelser, medmindre der er en særlig grund til, at opsætningen har brug for, at en af disse muligheder forbliver intakt.

BEMÆRK: Der kan være en fejl om manglende sletning af en database kaldet 'test', skal du ikke bekymre dig om dette, da databasen måske eller måske ikke findes, og uanset scriptet fortsætter med at gøre, hvad der er nødvendigt.

På dette tidspunkt er MySQL klar til brug. Uden at vide, hvilke databaser eller brugere der er behov for, er det svært at foretage meget mere konfiguration. Imidlertid vil de fleste websteder ofte automatisk oprette de nødvendige databaser og brugere, når softwaren er installeret. Dette er dog meget softwareafhængigt og vil kræve et hurtigt blik over softwarens README-filer eller installationsinstruktioner.

5. Nu hvor MySQL er konfigureret, lad os gå videre og opsætte nogle grundlæggende PHP-indstillinger til denne særlige server. Mens der er masser af indstillinger, der kan manipuleres til PHP, er der kun nogle få grundlæggende, som næsten altid skal ændres. PHP-konfigurationsfilen findes på /etc/php5/fpm/php.ini . Åbn denne fil med en hvilken som helst teksteditor.

# nano /etc/php5/fpm/php.ini

Brug nano's søgefunktioner ctrl+w søg efter strengen "memory_limit" (udelad citaterne). Ved en standardinstallation vil denne linje allerede være indstillet til 128M, men hvis en applikation har brug for mere, kan denne linje ændres for at imødekomme kravene.

En anden vigtig mulighed for at kontrollere er “max_execution_time” og igen som standard vil den blive indstillet til 30. Hvis en applikation kræver mere, kan denne mulighed ændres. Nogle mennesker foretrækker også at opsætte php-logning til en særlig fil/mappe. Hvis dette er et krav, skal du søge efter strengen “error_log =” og derefter fjerne kommentaren fra linjen ved at fjerne semikolon, der normalt er der som standard.

På dette tidspunkt kan en værdi for logfilen tilføjes i slutningen af linjen. Sørg for, at stien findes på systemet. Når du er færdig med at foretage de nødvendige ændringer i php.ini-filen, skal du gemme ændringerne og afslutte teksteditoren. På dette tidspunkt er MySQL og PHP5 klar til at starte hosting af websteder. Nu er det tid til at konfigurere Nginx.

Installation og konfiguration af Nginx

6. Nginx (motor X) er en alternativ og meget kraftig webserver. Dette afsnit af denne vejledning gennemgår opsætning af en webside, som Nginx skal være vært for. Det første trin til konfiguration af Nginx er at installere de nødvendige pakker ved hjælp af 'apt' -værktøjet.

# apt-get install nginx

Forudsat at alle afhængigheder er tilfredse, skal navigering til serverens IP-adresse i en webbrowser give Nginx-standardwebstedet.

BEMÆRK: Der er tilfælde, hvor serveren efter installation af Nginx ikke startes automatisk. Hvis du navigerer til serverens IP-adresse i en webbrowser ikke giver nedenstående side, skal du udstede følgende kommando for at sikre, at Nginx startes.

# service nginx start

Nginx er nu vellykket vært for standardsiden. Mens Debians standardside er et prangende websted, vil de fleste brugere være vært for noget tilpasset.

7. De næste trin gennemgår opsætningen af Nginx til at være vært for et andet websted. Nginx, ligesom Apache 2, har sin egen konfigurationsmappe placeret på /etc/nginx . Skift til denne mappe ved hjælp af cd-hjælpeprogrammet.

# cd /etc/nginx

Til denne vejledning er der flere vigtige filer og mapper til opsætning af et websted ved hjælp af Nginx. De to første kataloger, der er vigtige, er de 'sites-tilgængelige' og de 'sites-enabled' mapper. Ligesom Apache 2 bruger Nginx konfigurationsfiler til hvert websted i den webstedsbibliotek, der, når de er aktive, er symbolsk knyttet til den webstedsaktiverede bibliotek.

Den første ting, der er nødvendig for at slippe af med standardwebstedet, er at fjerne det symbolske link i sider-aktiveret.

# rm sites-enabled/default

8. Nu skal en ny konfigurationsfil til webstedet oprettes og linkes for at Nginx kan betjene siden. Oprettelse af webstedskonfigurationsfil kan forenkles ved at kopiere og ændre standardkonfigurationen af websteder.

# cp sites-available/default sites-available/tecmint-test

Dette opretter en ny webstedskonfigurationsfil til at arbejde med. Åbn denne fil i en teksteditor for at ændre den sti, som Nginx skal tjene filer.

# nano sites-available tecmint-test

Inden for denne fil er der flere vigtige muligheder for at ændre for at Nginx kan betjene et websted. Den første er den linje, der begynder med 'root', da denne linje definerer, hvor Nginx skal tjene filer til dette bestemte websted.

Denne tutorial giver det som standard på '/ var/www/html' og placerer simpelthen de html-filer, der skal serveres i denne mappe. Sørg dog for at ændre denne sti, hvis der skal være flere websteder eller en brugerdefineret konfiguration på denne server.

Den næste vigtige linje er 'indeks' linjen. Da denne artikel handler om LEMP-installation, og et websted potentielt kan betjene php-sider, skal Nginx informeres om, at standardsiden muligvis er en php-side. For at gøre dette skal du blot tilføje 'index.php' i slutningen af listen over filer.

Inden du aktiverer det nye websted, skal der være noget der for Nginx at tjene. Standardindekssiden findes allerede, men for at bekræfte, at et andet websted fungerer, skal vi erstatte indholdet af standardsiden med noget andet.

# echo “It's ALIVE!” > /var/www/html/index.html

9. Det næste trin er at aktivere det nye sted ved at linke den netop oprettede konfigurationsfil til det stedbaserede bibliotek. Dette opnås let ved brug af kommandoen ln og derefter genindlæse Nginxs konfiguration med serviceværktøjet.

# ln -s /etc/nginx/sites-available/tecmint-test sites-enabled/tecmint-test
# service nginx reload

På dette tidspunkt skal Nginx betjene den nye 'enkle' webside. Dette kan bekræftes ved at navigere til serverens IP-adresse via en webbrowser!

Igen betød denne artikel at være meget enkle konfigurationer af LEMP. De fleste steder kræver yderligere konfiguration til alle involverede dele, men konfigurationsindstillingerne kan variere i tusinder! Held og lykke i hvilken konfiguration, der nogensinde er valgt til at være vært for websteder.