Sett opp en Ubuntu 20.04-server med Lighttpd, MySQL og PHP-FPM
Lighttpd er en rask og fleksibel åpen kildekode-webserver som kan sammenlignes i ytelse med Nginx. For å være vert for PHP-applikasjoner som WordPress, Magento, etc. på en Lighttpd-server, må du sette opp en LLMP-stack på serveren din. LLMP står for Linux, Lighttpd, MySQL og PHP.
Takket være Lighttpds ytelse, overgår en LLMP-stabel lett en LAMP (Apache) satt opp på et gitt trafikkvolum. Når det gjelder LLMP vs LEMP (Nginx), er ytelsen stort sett lik. Men Nginx er et mer populært valg blant massene, og det er utmerket fellesskapsstøtte for LEMP-oppsett.
Hvis du ser etter en server for å håndtere mye trafikk med minimalt minneforbruk, er et LLMP-oppsett et godt valg. I denne veiledningen vil vi se på hvordan du installerer LLMP-stakken på en Ubuntu 20.04 LTS-maskin.
Forutsetninger
Du trenger en Ubuntu 20.04 LTS-server og logget på som en sudo
aktivert bruker. Du må også ha en grunnleggende forståelse av Linux-kommandoer.
Før vi begynner, oppdater og oppgrader pakkene på Ubuntu 20.04-serveren ved å gi kommandoen nedenfor:
sudo apt-get update && apt-get upgrade
Installer Lighttpd-nettserveren
For å installere Lighttpd-nettserveren på din Ubuntu 20.04-maskin, skriv inn følgende kommando i terminalen.
sudo apt-install lighttpd
Når installasjonsprosessen er fullført, skriv inn følgende kommandoer for å starte og aktivere Lighttpd-nettserveren.
systemctl start lighttpd systemctl aktiver lighttpd
For å sjekke statusen til Lighttpd-serveren, skriv inn kommandoen vist nedenfor.
systemctl status lighttpd
💡 Tips: For å fjerne den siste linjen med (END) skrevet på, trykk ESC
og q
for å kunne legge inn flere kommandoer.
Nå skal vi sette opp HTTP-, HTTPS- og SSH-tjenester i UFW-brannmuren. UFW er standard brannmurkonfigurasjonsverktøy for Ubuntu, også kalt Uncomplicated Firewall. Skriv inn følgende kommandoer og trykk enter en etter en.
sudo ufw tillat ssh sudo ufw tillat http sudo ufw tillat https
Aktiver UFW-brannmur ved å utstede følgende kommando:
sudo ufw aktiver
Hvis du får spørsmål om "Kommando kan forstyrre eksisterende ssh-tilkoblinger", skriv inn y
og treffer Tast inn
.
For å bekrefte Lighttpd-installasjonen, få tilgang til serveren ved hjelp av IP-adressen i en nettleser. Hvis den viser følgende skjermbilde, betyr det at Lighttpd-nettserveren er installert på Ubuntu 20.04-maskinen.
Installer og konfigurer MySQL-serveren
MySQL er et relasjonsdatabasestyringssystem basert på strukturert spørrespråk. For å installere MySQL-serveren og klienten på Ubuntu 20.04, kopier/lim inn følgende kommando og trykk Tast inn
.
sudo apt-get install mysql-server mysql-client
Den vil be deg med en melding om at denne operasjonen vil ta 247 MB ekstra diskplass etter installasjonen. Så, skriv y
og treffer Tast inn
.
Når installasjonsprosessen er fullført, start og aktiver MySQL-serveren og legg den til systemoppstarten ved å utstede følgende kommandoer én etter én.
systemctl start mysql systemctl aktiver mysql
Du vil se følgende melding på skjermen:
For å sjekke statusen til MySQL-tjenesten, skriv inn følgende kommando i terminalen. De mysql.service
status skal vises som "aktiv (kjører).
systemctl status mysql
For å konfigurere MySQL-sikkerhetsinnstillinger, vi vil kjøre et sikkerhetsskript som følger med MySQL-pakken. Skriv inn følgende kommando og trykk enter for å utføre skriptet.
mysql_secure_installation
Kommandoen ovenfor vil be deg noen spørsmål for å konfigurere MySQL-serveren.
Den vil be deg om å sette opp passordet ditt ved hjelp av VALIDER PASSORDKOMPONENT
. Denne plugin-en hjelper deg med å sette opp et sterkt passord for MySQL-databasene dine. trykk y
og trykk enter for å aktivere denne plugin-en. Type 0
, 1
, eller 2
for å velge passordvalideringspolicyen som bestemmer styrkenivået til passordet ditt.
Skriv inn et sterkt passord, de VALIDER PASSORD
plugin vil fortelle deg om den estimerte styrken til passordet ditt. trykk y
og treffer Tast inn
.
Etter å ha satt opp et sikkert passord, konfigurer resten av oppsettet som forklart nedenfor.
- Fjern anonyme brukere - Tast inn
y|Y
Fordi MySQL som standard inneholder anonym bruker som lar hvem som helst koble seg til MySQL-serveren uten å ha brukerkontoen. Fjern den derfor.
- Ikke tillat root-pålogging eksternt - Tast inn
y|Y
Fordi root bare skal tillates fra 'localhost'. Det sikrer at noen ikke kan logge på som root utenfor nettverket ditt.
- Vil du fjerne testdatabasen og få tilgang til den? - Tast inn
y|Y
Fordi MySQL kommer med en testdatabase som alle kan få tilgang til. Fjern den derfor før du flytter inn i produksjonsmiljøet.
- Laste inn rettighetstabeller på nytt nå? Tast inn
y|Y
Fordi dette vil sikre at endringene du har gjort så langt trer i kraft umiddelbart.
For å sjekke alle brukere som har tilgang til MySQL-serveren, logger du først på MySQL som root ved å bruke kommandoen nedenfor:
mysql -u rot -s
Utfør deretter følgende kommando for å få brukerlisten på MySQL-serveren:
velg Bruker, Vert fra mysql.user;
Når du har bekreftet brukerlisten, skriv exit
for å logge ut fra MySQL-skallet.
Installere PHP – Fast CGI-prosessbehandler (PHP-FPM)
PHP-FPM gjør det mulig for en server å håndtere enorme mengder belastning selv på en low-end server. Den hevder å kutte lastetiden med 300 prosent på visse PHP-applikasjoner.
For å installere de nyeste PHP-FPM-pakkene, utfør følgende kommando og trykk enter.
sudo apt-install php-fpm php-cgi php-mysql
Finjuster PHP-FPM-konfigurasjonen ved å gjøre noen endringer i php.ini
fil.
For å gjøre dette, gå først til katalogen/etc/php/7.4/fpm
bruker cd
kommando som vist nedenfor.
cd /etc/php/7.4/fpm
Bruk deretter kommandoen nedenfor for å åpne php.ini
fil i vim-editoren.
vim php.ini
Uncomment the cgi.fix_pathinfo=1
linje. Søk etter linjen som inneholder 'cgi.fix_pathinfo=1
«i redaktøren. For å gjøre dette trykk 'Esc
’ og skriv /cgi.fix_pathinfo=1
og treffer Tast inn
.
Trykk deretter Jeg
for å bytte til innsettingsmodus og fjerne ;
(semikolon) symbol før linjen eller trykk på x
knappen for å fjerne kommentaren til linjen php.ini
fil.
Når du er ferdig, lagrer du endringene du har gjort i filen og går ut av vim-editoren ved å trykke Esc
for å gå inn i kommandomodus og skriv deretter :wq
og treffer Tast inn
for å gå ut av redigeringsprogrammet.
Start og aktiver PHP-FPM ved å utstede følgende kommandoer:
systemctl start php7.4-fpm systemctl aktiver php7.4-fpm
For å sjekke statusen til PHP-FPM, kjør følgende kommando:
systemctl-status php7.4-fpm
Konfigurering av Lighttpd og PHP-FPM
Vi vil nå gjøre noen endringer i 15-fastcgi-php.conf
konfigurasjonsfil for å konfigurere Lighttpd og PHP-FPM.
Naviger til riktig katalog ved å skrive denne kommandoen og trykk enter.
cd etc/lighttpd/conf-available/
Hvis du vil beholde en duplikatkopi av15-fastcgi-php.conf
' fil, bruk deretter kommandoen nedenfor.
cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
Nå vil vi åpne og redigere denne filen ved å bruke vim-editoren ved å bruke kommandoen nedenfor:
vim 15-fastcgi-php.conf
Her erstatter du standard PHP-CGI-konfigurasjonsinnhold med innholdet vist nedenfor.
fastcgi.server += ( ".php" => (( "socket" => "/var/run/php/php7.4-fpm.sock", "broken-scriptfilename" => "aktiver" )) )
For å gjøre dette, følg trinnene i den spesifikke rekkefølgen som vist nedenfor.
- Trykk '
Esc
' og 'Jeg
’ for å komme inn i innsettingsmodus. - Naviger nå til linjene som vi må slette ved å bruke
opp
ellerned
piltaster (pil opp og ned fungerer i vim editor og ikke i vi editor). - For å slette en bestemt linje trykk
dd
. Og for å fjerne et enkelt ord trykkx
. - Kopier/lim inn koden ovenfor i filen.
- Lagre deretter filen og avslutt vim ved å trykke
Esc
,:wq
, ogTast inn
.
Nå vil Lighttpd fungere tilstrekkelig med PHP-FPM og er riktig konfigurert.
Aktiver FastCGI Lighttpd-moduler ved å bruke kommandoene nedenfor:
lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php
Til slutt, start Lighttpd-nettserveren på nytt for å bruke de nye konfigurasjonene og innstillingene.
systemctl start lighttpd på nytt
Test din LLMP-server
For å teste din nyopprettede LLMP-server, vil vi opprette en fil i roten til den offentlige katalogen på /var/www/html
.
Naviger først til katalogen ved å bruke cd
kommando som vist nedenfor.
cd /var/www/html/
Opprett en ny fil la oss sifil.php
som vist nedenfor ved å bruke vim-editoren.
vim-fil.php
Skriv nå inn dette enkle skriptet i editoren ved å gå inn i innsettingsmodus ved å trykke Jeg
.
Lagre og avslutt filen ved å trykke Esc
og :wq
.
De phpinfo()
er en funksjon som påkaller informasjon relatert til php. Dette skriptet er bare for å teste om det fungerer eller ikke. Du kan også bruke andre php-skript etter eget valg.
Til slutt, for å teste serveren din, åpne en nettleser og få tilgang til filen vi nettopp opprettet ved å skrive inn følgende adresse //din-server-ip/fil.php
.
Hvis PHP-versjonssiden vises som et resultat, kan vi trygt si at LLMP-stakken er installert på Ubuntu 20.04-maskinen din. Du kan nå installere PHP-applikasjonene du ønsker å kjøre på serveren.