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 å starte vær så snill bestille VPS-server or dedikert server. For eksempel brukte vi en virtuell server med statisk IP-adresse som kjører 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, åpne en nettleser og sjekk "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 kan finne velkomstsiden du nettopp så. La oss lage en egen katalog "/var/www/nettsteder" 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 filen “/var/www/sites/site1/index.html” bør inneholde bare én linje med html-kode:

<H1>Welcome</H1>

3. Apache-serverkonfigurasjon

Konfigurasjonsfiler for nettsidene er inne "/etc/apache2/sites-available/" katalog. La oss lage en konfigurasjonsfil for en ny virtuell vert som tar 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 "DocumentRoot" attributt. Sett banen til nettstedet ditt som verdien, så i vårt tilfelle er det 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 vår nye side i stedet for standardvelkomstsiden.

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 vår ftp-server og en tilleggspakke "db-util", at vi må 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 påloggingstillatelse, men med tilgang til hjemmemappe “/var/www/”. Denne kontoen vil bli brukt av ftp-brukere for å koble til serveren

useradd -d /var/www virtual

"Rot" vil være eier av “/var/www” mappe som standard. For å gjøre det mulig for ftp-brukere å endre innholdet på nettsidene, la oss endre eieren av "/var/www/nettsteder/" inkludert undermapper av "virtuell".

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

Som et resultat, brukeren "virtuell" vil kunne se innholdet i “/var/www/” og skriv inn i "/var/www/nettsteder/" undermappe.

3. konfigurasjon

Hovedkonfigurasjonen er i filen "/etc/vsftpd.conf", så la oss åpne den og redigere den som følger:

#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.

Først, la oss lage en enkel tekstfil «users.txt» i hjemmemappen og lagre tilgangsdetaljer (pålogging og passord) for virtuelle brukere på annenhver linje. For eksempel vil vi trenge en virtuell bruker med påloggingen "ftp" og passord “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 «pam_userdb.so» biblioteket kan være annerledes, men du kan endre det 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 kjøres, bør nettsidefilen ha ".php" utvidelse. La oss gi nytt navn til testsiden vår:

cd /var/www/sites/site1/

mv index.html index.php

Legg til følgende php-linje i filen “/var/www/sites/site1/index.php”, så 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 funksjon "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 delen PDO i PHP-konfigurasjonstabellen. Hvis du finner seksjonen "PDO_mysql", betyr det at driveren for Mysql er riktig installert.

MySQL (MariaDB) installasjon og konfigurasjon

Da må vi gjøre den første sikkerhetskonfigurasjonen av MariaDB og angi passordet for "Rot" bruker, deaktiver ekstern tilgang og slett alle gjestekontoer.

mysql_secure_installation

I det første trinnet må vi gå inn i "rot" brukerens passord for å få tilgang til DBMS eller trykk Enter hvis det ikke er noe passord. Siden det ikke er angitt noe passord for "rot" bruker etter installasjon, bare trykk "Tast inn".

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

  MySQL: Opprett konto og konfigurer et passord

Etter det vil konfiguratoren be oss angi passordet for root-brukeren. Type "Y" for å bekrefte og angi det nye passordet. I vårt tilfelle er det det “Qwe123”

  MySQL: Opprett konto og konfigurer et passord

Svar "Y" på alle de andre spørsmålene helt til slutten.

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 den offisielle nettsiden til prosjektet "https://www.phpmyadmin.net/” og last ned det siste arkivet.

phpMyAdmin installasjon og konfigurasjon

Kopier arkivet til serveren i "/var/www/nettsteder/" mappe ved å bruke en hvilken som helst ftp-klient.

Fjern mappen og gi den nytt navn til "phpMyAdmin". Ikke glem å installere "pakke ut" nytte. Du kan slette arkivet etter at du har fjernet det fra arkivet.

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 muliggjør tilgang for alle. Hvis du ikke gjør dette, vil phpMyAdmin rapportere tilgang nektet til den midlertidige mappen.

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

Alias ​​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 står bak gnister "... PÅ `phpmyadmin`.* TIL 'pma'@'localhost' IDENTIFISERT AV …”,

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

På neste trinn vil vi angi disse detaljene i konfigurasjonsfilen «config.inc.php».

Da 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ålogging "pma" og passord “Qwe123”

Gå til "Importere"klikk "Velg Fil" og velg filen «sql/create_tables.sql» i rotkatalogen til phpMyAdmin. Det er ment å være mappen på PC-en din "phpMyAdmin" med filer. Fjern arkivet om nødvendig.

phpmyadmin-konfigurasjon

Klikk “Neste” for å begynne å importere.

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ør følgende endringer:

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

Hvordan installere og konfigurere WordPress på en Linux-server

Fjern kommentarer fra alle linjene i "phpMyAdmin konfigurasjonslagringsinnstillinger" seksjonen og angi pålogging og passord til MariaDBs tjenestekonto for "kontrollbruker" og "kontrollpass" attributter tilsvarende. I vårt tilfelle er det 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 den offisielle WP-nettsiden "https://ru.wordpress.org/” og last ned arkivet til din lokale PC.

Last opp arkivet til serveren til "/var/www/nettsteder/" mappen og avarkiver den til «wordpress" mappe.

Kopier innholdet i “/var/www/sites/wordpress/” rotmappen til “/var/www/sites/site1/” nettside.

Siden vi kopierte filene via konsollen med root-tillatelser, la oss endre eieren av "/var/www/nettsteder/" mappe inkludert innholdet i "virtuell". 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 den venstre delen og klikk «Privilegier»

Lag en database for WordPress

Klikk deretter "Legg til brukerkonto".

Skriv inn login og passord (wpservice / Qwe123) i det åpne vinduet, sjekk "Gi alle privilegier i wordpress_db" og klikk “Neste”

Legg til brukerkonto i databasen for WordPress

Klikk på neste side "Avbryt alle" for å tilbakestille alle privilegier på databasenivå og klikk “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 "wp-config.php" fil og skriv inn databasetilkoblingsparametrene som 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 "Installer WordPress". Angi et tilfeldig brukernavn og passord. I vårt tilfelle er det det stikke innom og Qwe123 tilsvarende.

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 koblingen "http://[serverens_ip_adresse]/wp-login.php", skriv inn tilgangsdetaljene og logg 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.