Kunnskapsbase Enkle instruksjoner for å jobbe med Profitserver-tjenesten
Hoved Kunnskapsbase Hvordan konfigurere en webserver (Apache-PHP-MySQL/MariaDB) på Linux

Hvordan konfigurere en webserver (Apache-PHP-MySQL/MariaDB) på Linux


I denne artikkelen vil vi gi deg trinnvise instruksjoner om hvordan du konfigurerer webmiljø på en server som kjører Linux. Først må du forstå at en typisk webserver består av noen få samvirkende komponenter:

  • HTTP-server
  • programmeringsspråk tolk
  • databasestyringssystem (DBMS)

For å administrere nettstedet ditt må du også sette opp et innholdsstyringssystem (CMS), et webgrensesnitt for databaseadministrasjon og FTP-tilgang.

La oss vurdere å sette opp en veldig populær konfigurasjon Apache-PHP-MySQL(MariaDB) på Linux. Vi vil også installere vsftpd ftp-server, phpMyAdmin - et webgrensesnitt for databaseadministrasjon, og et innholdsstyringssystem WordPress.

For å komme i gang, bestill en VPS-server eller dedikert server . For eksempel brukte vi en virtuell server med statisk IP-adresse som kjørte Ubuntu Server 18.04. Alle kommandoer ble kjørt av root-brukeren.

Apache HTTP-serverkonfigurasjon

1. Installasjon

apt install apache2

Når installasjonen er fullført, åpner du en nettleser og sjekker «http://[serverens_ip_adresse]».

Apache HTTP-serverkonfigurasjon

Hvis du ser en velkomstside som denne på skjermbildet ovenfor, betyr det at HTTP-serveren din fungerer.

2. Opprett en testside

Standard rotkatalog for nettstedet er «/var/www/html» . Det er her du finner velkomstsiden du nettopp så. La oss opprette en egen katalog «/var/www/sites» for virtuelle verter og en undermappe «/var/www/sites/site1» med indekssiden til testnettstedet ditt.

cd /var/www/

mkdir -p sites/site1

echo "<H1>Welcome</H1>" > sites/site1/index.html

I resultatet skal filen «/var/www/sites/site1/index.html» bare inneholde én linje med html-kode:

<H1>Welcome</H1>

3. Apache-serverkonfigurasjon

Konfigurasjonsfilene til nettstedene finnes i katalogen «/etc/apache2/sites-available/» . La oss opprette en konfigurasjonsfil for en ny virtuell vert med standardkonfigurasjonen fra filen «000-default.conf» som grunnlag.

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Åpne filen «site1.conf» og endre attributtet «DocumentRoot» . Skriv inn banen til nettstedet ditt som verdi, så i vårt tilfelle er det «/var/www/sites/site1»

Apache-serverkonfigurasjon

På dette stadiet trenger vi ikke å konfigurere samtidig drift av flere nettsteder, så vi kan deaktivere standardnettstedet og aktivere det nye nettstedet. Last inn serverkonfigurasjonen på nytt for å bruke endringene.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Åpne lenken «http://[serverens _ip_adresse]» igjen, og sørg for at vi har den nye siden vår i stedet for standard velkomstside.

Apache-serverkonfigurasjon

Vi fullførte konfigurasjonen av HTTP-serveren vår, og vi kan fortsette til neste trinn.

FTP-serverkonfigurasjon

1. Installasjon

La oss installere ftp-serveren vår og en tilleggspakke «db-util» , som vi trenger for å konfigurere virtuelle brukere.

apt install vsftpd db-util

2. Opprett lokal konto

vsftpd-serveren lar oss konfigurere tilgangstillatelser på en veldig fleksibel måte. For våre oppgaver må vi gi ftp-brukere følgende:

  • full tilgang til innholdet i "/var/www/nettsteder/";
  • deaktiver alt som er ovenfor “/var/www/”;
  • forbindelse med en virtuell konto;

Opprett en lokal konto «virtuell» uten innloggingstillatelse, men med tilgang til hjemmemappen «/var/www/» . Denne kontoen vil bli brukt av ftp-brukere for å koble til serveren.

useradd -d /var/www virtual

«Root» vil som standard være eieren av mappen «/var/www» . For å gjøre det mulig for ftp-brukere å endre innholdet på nettstedene, la oss endre eieren av «/var/www/sites/» inkludert undermappene til «virtual».

chown -R virtual:root /var/www/sites

Som et resultat vil den «virtuelle» brukeren kunne se innholdet i «/var/www/» og skrive i undermappen «/var/www/sites/».

3. konfigurasjon

Hovedkonfigurasjonen er i filen «/etc/vsftpd.conf» , så la oss åpne den og redigere den slik:

#enable virtual users

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual
#configure permission

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_world_readable_only=NO

anon_umask=0022

chroot_local_user=YES
#launch settings

listen=YES

pasv_min_port=30000

pasv_max_port=30999

4. Opprett databasen

Du trenger en database for å lagre data fra virtuelle kontoer.

La oss først opprette en enkel tekstfil med navnet «users.txt» i hjemmemappen og lagre tilgangsdetaljer (brukernavn og passord) for virtuelle brukere annenhver linje. For eksempel trenger vi en virtuell bruker med brukernavnet «ftp» og passordet «Qwe123» . Da vil filen se slik ut:

ftp

Qwe123

La oss lage databasen

db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db

La oss endre standard PAM-filen «/etc/pam.d/vsftp» som følger:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

Vær oppmerksom på at banen til biblioteket «pam_userdb.so» kan være annerledes, men du kan endre den om nødvendig.

Last inn vsftpd-serveren på nytt for å bruke endringer.

systemctl restart vsftpd

Vi fullførte konfigureringen av FTP-serveren.

Tilkoblingsdetaljer:

  • ftp://[serverens_ip_adresse]
  • pålogging: ftp
  • passord: Qwe123

PHP-serverkonfigurasjon

1. Installasjon av PHP

I dag er den siste stabile versjonen av PHP php 7.4.5 som ikke er inkludert i offisielle Ubuntu-repositories. La oss koble til et tredjepartslager og installere den nyeste versjonen av PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Kryss av

For at PHP skal kunne kjøres, må nettsiden ha filtypen «.php» . La oss gi testsiden nytt navn:

cd /var/www/sites/site1/

mv index.html index.php

Legg til følgende php-linje i filen «/var/www/sites/site1/index.php» , slik at filen skal se slik ut:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Lagre endringene og sjekk resultatet i nettleseren.

PHP-serverkonfigurasjon - installasjon og sjekk

Hvis du ser resultatet av funksjonen «phpinfo()» , fungerer PHP-tolken som den skal. La oss nå gå videre til neste trinn.

MySQL (MariaDB) konfigurasjon

1. Installasjon

La oss installere MariaDB og en PHP-modul for MySQL og deretter laste inn Apache på nytt.

apt install mariadb-server php-mysql

systemctl restart apache2

Oppdater testsiden og gå til seksjonen PDO i PHP-konfigurasjonstabellen. Hvis du finner seksjonen «PDO_mysql» , betyr det at driveren for Mysql er riktig installert.

MySQL (MariaDB) installasjon og konfigurasjon

Deretter må vi gjøre den første sikkerhetskonfigurasjonen av MariaDB og angi passordet for "root" -brukeren, deaktivere ekstern tilgang og slette alle gjestekontoer.

mysql_secure_installation

I det første trinnet må vi skrive inn passordet til «root» -brukeren for å få tilgang til DBMS, eller trykke Enter hvis det ikke finnes noe passord. Siden det ikke er angitt noe passord for «root» -brukeren etter installasjonen, trykker vi bare på «Enter».

Vær oppmerksom på at det i MariaDB allerede finnes egne kontoer som ikke har noe med OS-kontoene å gjøre. Så den eneste brukeren vi har med å gjøre i MariaDB er «root».

  MySQL: Opprett konto og konfigurer et passord

Etter det vil konfiguratoren be oss om å angi passordet for root-brukeren. Skriv inn «Y» for å bekrefte og skriv inn det nye passordet. I vårt tilfelle er det «Qwe123».

  MySQL: Opprett konto og konfigurer et passord

Svar «J» på alle de andre spørsmålene helt til slutt.

Konfigurasjonen er ferdig!

MariaDB tilgangsdetaljer:

  • Innlogging: root
  • Passord: Qwe123

phpMyAdmin-konfigurasjon

1. Installasjon

La oss installere den nødvendige utvidelsen for PHP – mbstring.

apt install php-mbstring

I det offisielle depotet er det bare en utdatert versjon av phpMyAdmin, så la oss installere den nye manuelt.

Åpne prosjektets offisielle nettside « https://www.phpmyadmin.net/ » og last ned det nyeste arkivet.

phpMyAdmin installasjon og konfigurasjon

Kopier arkivet til serveren i mappen «/var/www/sites/» ved hjelp av en hvilken som helst ftp-klient.

Dearkivér mappen og gi den nytt navn til «phpMyAdmin» . Ikke glem å installere «unzip» -verktøyet. Du kan slette arkivet etter at du har dearkivert det.

apt install unzip

cd /var/www/sites/

unzip phpMyAdmin-5.0.2-all-languages.zip

mv phpMyAdmin-5.0.2-all-languages phpMyAdmin

rm phpMyAdmin-5.0.2-all-languages.zip

Opprett følgende mappe «/var/www/sites/phpMyAdmin/tmp» for midlertidige filer og aktiver tilgang for alle. Hvis du ikke gjør dette, vil phpMyAdmin rapportere at tilgang til den midlertidige mappen er nektet.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Opprett et alias

Siden phpMyAdmin ikke er en separat virtuell vert og ligger utenfor rotkatalogen, la oss konfigurere aliaset.

Åpne filen «/etc/apache2/mods-available/alias.conf» og legg til denne linjen:

Alias /pma “/var/www/sites/phpMyAdmin"

inne i denne delen:

<IfModule alias_module>

</IfModule>
phpMyAdmin: Opprett et alias

Last inn Apache på nytt for å bruke endringene.

systemctl reload apache2

Aliaset er satt, så vi kan få tilgang til phpMyAdmin her: «http://[serverens_ip-adresse]/pma».

3. Forbered databasen

Siden vi begrenset bruken av root-bruker under den første konfigurasjonen av MariaDB, må vi opprette en ny konto med alle tillatelser som vil bli brukt for å få tilgang til phpMyAdmin.

Dessuten, for å aktivere tilleggsfunksjoner i phpMyAdmin, trenger vi en tjenestedatabase og en konto for å få tilgang til den.

La oss opprette kontoene

mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit

Vær oppmerksom på at databasenavnet i den andre forespørselen er i backsparks “… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY …”,

I resultatet vil det være to kontoer opprettet i MariaDB:

  • Innlogging: pma, Passord: Qwe123Full tilgang, vil bli brukt til å logge på phpMyAdmin
  • Pålogging: pmaservice, Passord: Qwe123Tjenestekontoen kreves for at tilleggsfunksjoner skal fungere

I neste trinn angir vi disse detaljene i konfigurasjonsfilen «config.inc.php».

Deretter må vi importere databasen fra filen «phpMyAdmin/sql/create_tables.sql».

La oss importere den ved hjelp av phpMyAdmin.

Åpne lenken «http://[serverens_ip_adresse]/pma»

Skriv inn påloggingsnavnet «pma» og passordet «Qwe123»

Gå til «Importer» , klikk på «Velg fil» og velg filen «sql/create_tables.sql» i rotkatalogen til phpMyAdmin. Der skal det visstnok være mappen «phpMyAdmin» med filer på PC-en din. Avarkivér den om nødvendig.

phpmyadmin-konfigurasjon

Klikk på «Neste» for å starte importen.

4. konfigurasjon

La oss kopiere konfigurasjonsfilen fra malen

cd /var/www/sites/phpMyAdmin/

cp config.sample.inc.php config.inc.php

La oss åpne konfigurasjonsfilen «/var/www/sites/phpMyAdmin/config.inc.php» og gjøre følgende endringer:

Angi en tilfeldig verdi på 32 tegn for attributtet «$cfg['blowfish_secret']» . Bruk en hvilken som helst passordgenerator til det.

Hvordan installere og konfigurere WordPress på en Linux-server

Fjern kommentarer fra alle linjene i delen «phpMyAdmin configuration storage settings» og angi brukernavn og passord for MariaDBs tjenestekonto for attributtene «controluser» og «controlpass» deretter. I vårt tilfelle er det pmaservice og Qwe123.

Hvordan installere og konfigurere WordPress på en Linux-server

Lagre endringene.

Få tilgang til detaljer for phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • Innlogging: pma
  • Passord: Qwe123

Hvordan installere og konfigurere WordPress på en Linux-server

1. Plassering av WordPress-pakke og filer

Gå til det offisielle WP-nettstedet « https://ru.wordpress.org/ » og last ned arkivet til din lokale PC.

Last opp arkivet til serveren i mappen «/var/www/sites/» og dearkivér det til mappen «wordpress ».

Kopier innholdet i rotmappen «/var/www/sites/wordpress/» på nettstedet «/var/www/sites/site1/».

Siden vi kopierte filene via konsollen med root-rettigheter, la oss endre eieren av mappen «/var/www/sites/», inkludert innholdet i «virtual» . Dette er nødvendig for å aktivere full tilgang for ftp-tilkobling via klienten.

cd /var/www/sites/

tar -xzvf wordpress-5.4-ru_RU.tar.gz

cp -R wordpress/* site1/

chown -R virtual:root /var/www/sites

2. Lag en database for WordPress

Logg inn på phpMyAdmin og klikk på "Opprett database". Spesifiser et vilkårlig databasenavn, i vårt tilfelle "wordpress_db", og klikk på "Opprett"-knappen.

Lag en database for WordPress

Velg den nye databasen i venstre seksjon og klikk på «Privilegier».

Lag en database for WordPress

Klikk deretter på «Legg til brukerkonto».

Skriv inn brukernavn og passord ( wpservice / Qwe123 ) i vinduet som åpnes, merk av for «Gi alle rettigheter til wordpress_db» og klikk på «Neste».

Legg til brukerkonto i databasen for WordPress

På neste side klikker du på «Avbryt alle» for å tilbakestille alle rettigheter på databasenivå, og klikker på «Neste».

Legg til brukerkonto i databasen for WordPress

3. WordPress-konfigurasjon på en Linux-server

Gå til rotkatalogen til nettstedet ditt og kopier konfigurasjonsfilen fra malen

cd /var/www/sites/site1/

cp wp-config-sample.php wp-config.php

Åpne filen «wp-config.php» og skriv inn databasetilkoblingsparameterne vi opprettet i forrige trinn, og lagre endringene.

WordPress-konfigurasjon på en Linux-server

4. Installer CMS WordPress

Åpne følgende lenke i nettleseren «http://[serverens_ip-adresse]/wp-admin/install.php».

Fyll ut alle feltene og klikk på «Installer WordPress» . Angi et tilfeldig brukernavn og passord. I vårt tilfelle er det wpadmin og Qwe123.

Disse detaljene vil bli brukt for å få tilgang til WordPress.

Installer CMS WordPress på en Linux-server

Når du er ferdig med installasjonen, åpner du lenken «http://[server's_ip_address]/wp-login.php» , skriver inn tilgangsdetaljene og logger inn på WordPress.

Installer CMS WordPress på en Linux-server

Du bør se en av WordPress-malene på hovedsiden.

Installer CMS WordPress på en Linux-server

Konfigurasjonen er fullført.

WordPress-tilgangsdetaljer:

  • http://[server’s_ip_address]/wp-login.php
  • Logg inn: wpadmin
  • Passord: Qwe123
Neste artikkel ❯ Konfigurerer .htaccess-fil

Spør oss om VPS

Vi er alltid klare til å svare på spørsmålene dine når som helst på dagen eller natten.