Kunskapsbas Enkla instruktioner för att arbeta med Profitserver-tjänsten
Huvudsida Kunskapsbas Hur man konfigurerar en webbserver (Apache-PHP-MySQL/MariaDB) på Linux

Hur man konfigurerar en webbserver (Apache-PHP-MySQL/MariaDB) på Linux


I den här artikeln kommer vi att ge dig steg-för-steg-instruktioner om hur du konfigurerar webbmiljön på en server som kör Linux. Först och främst måste du förstå att en typisk webbserver består av några interagerande komponenter:

  • HTTP-server
  • tolk för programmeringsspråk
  • databashanteringssystem (DBMS)

För att hantera din webbplats behöver du också konfigurera ett innehållshanteringssystem (CMS), ett webbgränssnitt för databashantering och FTP-åtkomst.

Låt oss överväga att ställa in en mycket populär konfiguration Apache-PHP-MySQL(MariaDB) på Linux. Vi kommer även att installera vsftpd ftp-server, phpMyAdmin - ett webbgränssnitt för databashantering och ett innehållshanteringssystem WordPress.

För att börja snälla beställa VPS-server or dedikerad server. Till exempel använde vi en virtuell server med statisk IP-adress som körde Ubuntu Server 18.04. Alla kommandon kördes av rotanvändaren.

Apache HTTP-serverkonfiguration

1. Installation

apt install apache2

När installationen är klar, öppna en webbläsare och kontrollera "http://[serverns_ip_adress]"

Apache HTTP-serverkonfiguration

Om du ser en välkomstsida som denna på skärmdumpen ovan betyder det att din HTTP-server fungerar.

2. Skapa en testsida

Standardrotkatalogen för webbplatsen är "/var/www/html". Det är här du kan hitta välkomstsidan du just såg. Låt oss skapa en separat katalog "/var/www/webbplatser" för virtuella värdar och en undermapp “/var/www/sites/site1” med indexsidan för din testwebbplats.

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 innehålla bara en rad med html-kod:

<H1>Welcome</H1>

3. Apache-serverkonfiguration

Webbplatsernas konfigurationsfiler finns i "/etc/apache2/sites-available/" katalog. Låt oss skapa en konfigurationsfil för en ny virtuell värd som tar standardkonfigurationen från filen "000-default.conf" som grund.

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Öppna filen "site1.conf" och ändra "DocumentRoot" attribut. Sätt sökvägen till din webbplats som värdet, så i vårt fall är det det “/var/www/sites/site1”

Apache-serverkonfiguration

I det här skedet behöver vi inte konfigurera den samtidiga driften av flera webbplatser, så vi kan inaktivera standardwebbplatsen och aktivera den nya webbplatsen. Ladda om serverkonfigurationen för att tillämpa ändringarna.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Öppna länken "http://[serverns _ip_adress]" igen och se till att vi har vår nya sida istället för standardvälkomstsidan.

Apache-serverkonfiguration

Vi avslutade konfigurationen av vår HTTP-server och vi kan gå vidare till nästa steg.

FTP-serverkonfiguration

1. Installation

Låt oss installera vår ftp-server och ett extra paket "db-util", att vi måste konfigurera virtuella användare

apt install vsftpd db-util

2. Skapa ett lokalt konto

Med vsftpd-servern kan vi konfigurera åtkomstbehörigheter på ett mycket flexibelt sätt. För våra uppgifter behöver vi förse ftp-användare med följande:

  • full tillgång till innehållet i "/var/www/webbplatser/";
  • inaktivera allt ovan "/var/www/";
  • anslutning till ett virtuellt konto;

Skapa ett lokalt konto "virtuell" utan inloggningsbehörighet men med tillgång till hemmapp "/var/www/". Detta konto kommer att användas av ftp-användare för att ansluta till servern

useradd -d /var/www virtual

"Rot" kommer att vara ägare till "/var/www" mapp som standard. För att göra det möjligt för ftp-användare att ändra innehållet på webbplatserna, låt oss byta ägare till "/var/www/webbplatser/" inklusive undermappar till "virtuell".

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

Som ett resultat, användaren "virtuell" kommer att kunna se innehållet i "/var/www/" och skriv in i "/var/www/webbplatser/" mapp.

3. konfiguration

Huvudkonfigurationen finns i filen "/etc/vsftpd.conf", så låt oss öppna den och redigera den enligt följande:

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

Du behöver en databas för att lagra data från virtuella konton.

Låt oss först skapa en enkel textfil "users.txt" i hemmappen och spara åtkomstdetaljer (inloggning och lösenord) för virtuella användare på varannan rad. Till exempel kommer vi att behöva en virtuell användare med inloggningen "ftp" och lösenord "Qwe123". Då ser filen ut så här:

ftp

Qwe123

Låt oss skapa databasen

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

Låt oss ändra standard PAM-filen "/etc/pam.d/vsftp" enligt följande:

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

Observera att sökvägen till "pam_userdb.so" biblioteket kan vara annorlunda men du kan ändra det om det behövs.

Ladda om vsftpd-servern för att tillämpa ändringar.

systemctl restart vsftpd

Vi avslutade konfigureringen av FTP-servern.

Anslutningsdetaljer:

  • ftp://[serverns_ip_adress]
  • inloggning: ftp
  • lösenord: Qwe123

PHP-serverkonfiguration

1. Installation av PHP

Idag är den senaste stabila versionen av PHP php 7.4.5 som inte ingår i officiella Ubuntu-förråd. Låt oss ansluta ett tredjepartsförråd och installera den senaste versionen av PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Kolla upp

För att PHP ska köras bör webbsidans fil ha ".php" förlängning. Låt oss byta namn på vår testsida:

cd /var/www/sites/site1/

mv index.html index.php

Lägg till följande php-rad i filen “/var/www/sites/site1/index.php”, så filen bör se ut så här:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Spara ändringarna och kontrollera resultatet i webbläsaren.

PHP-serverkonfiguration - installation och kontroll

Om du ser resultatet av funktion "phpinfo()", fungerar PHP-tolken korrekt. Låt oss nu gå vidare till nästa steg.

MySQL (MariaDB) konfiguration

1. Installation

Låt oss installera MariaDB och en PHP-modul för MySQL och sedan ladda om Apache.

apt install mariadb-server php-mysql

systemctl restart apache2

Uppdatera testsidan och gå till avsnittet PDO i PHP-konfigurationstabellen. Om du kan hitta avsnittet "PDO_mysql", då betyder det att drivrutinen för Mysql är korrekt installerad.

MySQL (MariaDB) installation och konfiguration

Då måste vi göra den första säkerhetskonfigurationen av MariaDB och ställa in lösenordet för "Rot" användare, inaktivera fjärråtkomst och ta bort alla gästkonton.

mysql_secure_installation

I det första steget måste vi gå in i "rot" användarens lösenord för att komma åt DBMS eller tryck på Enter om det inte finns något lösenord. Eftersom det inte finns något lösenord inställt för "rot" användare efter installationen, tryck bara på "Stiga på".

Observera att det i MariaDB redan finns egna konton som inte har något med OS-kontona att göra. Så den enda användare vi har att göra med i MariaDB är "rot".

  MySQL: Skapa konto och ställ in ett lösenord

Efter det kommer konfiguratorn att be oss ställa in lösenordet för root-användaren. Typ "Y" för att bekräfta och ange det nya lösenordet. I vårt fall är det så "Qwe123"

  MySQL: Skapa konto och ställ in ett lösenord

Svara "Y" till alla övriga frågor ända till slutet.

Konfigurationen är klar!

MariaDB åtkomstinformation:

  • Inloggning: root
  • Lösenord: Qwe123

phpMyAdmin-konfiguration

1. Installation

Låt oss installera det nödvändiga tillägget för PHP - mbstring.

apt install php-mbstring

I det officiella arkivet finns det bara en föråldrad version av phpMyAdmin, så låt oss installera den nya manuellt.

Öppna den officiella webbplatsen för projektet "https://www.phpmyadmin.net/” och ladda ner det senaste arkivet.

phpMyAdmin installation och konfiguration

Kopiera arkivet till servern i "/var/www/webbplatser/" mapp med valfri ftp-klient.

Avarkivera mappen och byt namn på den till "phpMyAdmin". Glöm inte att installera "packa upp" nytta. Du kan ta bort arkivet efter att du har avarkiverat 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

Skapa följande mapp “/var/www/sites/phpMyAdmin/tmp” för temporära filer och möjliggör åtkomst för alla. Om du inte gör detta kommer phpMyAdmin att rapportera åtkomst nekad till den temporära mappen.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Skapa ett alias

Eftersom phpMyAdmin inte är en separat virtuell värd och ligger utanför rotkatalogen, låt oss konfigurera aliaset.

Öppna filen "/etc/apache2/mods-available/alias.conf" och lägg till denna rad:

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

i detta avsnitt:

<IfModule alias_module>

</IfModule>
phpMyAdmin: Skapa ett alias

Ladda om Apache för att tillämpa ändringarna.

systemctl reload apache2

Alias ​​är inställt, så vi kan komma åt phpMyAdmin här "http://[serverns_ip_adress]/pma".

3. Förbered databasen

Eftersom vi begränsade användningen av root-användare under den initiala konfigurationen av MariaDB, måste vi skapa ett nytt konto med alla behörigheter som kommer att användas för att komma åt phpMyAdmin.

Dessutom, för att aktivera ytterligare funktioner i phpMyAdmin behöver vi en tjänstedatabas och ett konto för att komma åt den.

Låt oss skapa kontona

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

Observera att databasnamnet i den andra förfrågan är i bakre gnistor "... PÅ `phpmyadmin`.* TILL 'pma'@'localhost' IDENTIFIERAD AV …”,

I resultatet kommer det att skapas två konton i MariaDB:

  • Inloggning: pma, Lösenord: Qwe123Full åtkomst, kommer att användas för att logga in på phpMyAdmin
  • Inloggning: pmaservice, Lösenord: Qwe123Servicekontot krävs för att ytterligare funktioner ska fungera

I nästa steg kommer vi att ställa in dessa detaljer i konfigurationsfilen "config.inc.php".

Sedan måste vi importera databasen från filen "phpMyAdmin/sql/create_tables.sql".

Låt oss importera det med hjälp av phpMyAdmin.

Öppna länken "http://[serverns_ip_adress]/pma"

Ange inloggning "pma" och lösenord "Qwe123"

Gå till "Importera", klicka på "Välj fil" och välj filen ”sql/create_tables.sql” i rotkatalogen för phpMyAdmin. Det ska finnas mappen på din dator "phpMyAdmin" med filer. Avarkivera det om det behövs.

phpmyadmin-konfiguration

Klicka "Nästa" för att börja importera.

4. konfiguration

Låt oss kopiera konfigurationsfilen från mallen

cd /var/www/sites/phpMyAdmin/

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

Låt oss öppna konfigurationsfilen “/var/www/sites/phpMyAdmin/config.inc.php” och gör följande ändringar:

Ställ in ett slumpmässigt värde på 32 tecken för attributet “$cfg['blowfish_secret']”. Använd valfri lösenordsgenerator för det..

Hur man installerar och konfigurerar WordPress på en Linux-server

Ta bort kommentarer från alla rader i "phpMyAdmin konfigurationslagringsinställningar" sektionen och ställ in inloggningen och lösenordet för MariaDB:s tjänstkonto för "kontrollanvändare" och "kontrollpass" attribut i enlighet därmed. I vårt fall är det så pmaservice och Qwe123.

Hur man installerar och konfigurerar WordPress på en Linux-server

Spara ändringarna.

Få åtkomst till detaljer för phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • Inloggning: pma
  • Lösenord: Qwe123

Hur man installerar och konfigurerar WordPress på en Linux-server

1. Placering av WordPress-paket och filer

Gå till den officiella WP-webbplatsen "https://ru.wordpress.org/” och ladda ner arkivet till din lokala PC.

Ladda upp arkivet till servern till "/var/www/webbplatser/" mappen och avarkivera den till "wordpress" mapp.

Kopiera innehållet i “/var/www/sites/wordpress/” rotmappen för “/var/www/sites/site1/” webbsajt.

Eftersom vi kopierade filerna via konsolen med root-behörigheter, låt oss byta ägare till "/var/www/webbplatser/" mapp inklusive innehållet i "virtuell". Detta krävs för att möjliggöra full åtkomst för ftp-anslutning 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. Skapa en databas för WordPress

Logga in på phpMyAdmin och klicka på "Skapa databas". Ange ett godtyckligt databasnamn, i vårt fall "wordpress_db" och klicka på knappen "Skapa".

Skapa en databas för WordPress

Välj den nya databasen i den vänstra delen och klicka "Privilegier"

Skapa en databas för WordPress

Klicka sedan på "Lägg till användarkonto".

Ange inloggning och lösenord (wpservice / Qwe123) i det öppnade fönstret, kontrollera "Ge alla privilegier i wordpress_db" och klicka "Nästa"

Lägg till användarkonto i databasen för WordPress

Klicka på nästa sida "Avbryt alla" för att återställa alla privilegier på databasnivå och klicka "Nästa".

Lägg till användarkonto i databasen för WordPress

3. WordPress-konfiguration på en Linux-server

Gå till rotkatalogen på din webbplats och kopiera konfigurationsfilen från mallen

cd /var/www/sites/site1/

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

Öppna "wp-config.php" fil och ange databasanslutningsparametrarna som vi skapade i föregående steg och spara ändringarna.

WordPress-konfiguration på en Linux-server

4. Installera CMS WordPress

Öppna följande länk i webbläsaren "http://[serverns_ip_adress]/wp-admin/install.php".

Fyll i alla fält och klicka "Installera WordPress". Ange ett slumpmässigt användarnamn och lösenord. I vårt fall är det så wpadmin och Qwe123 följaktligen.

Dessa uppgifter kommer att användas för att komma åt WordPress.

Installera CMS WordPress på en Linux-server

Öppna länken när du är klar med installationen "http://[serverns_ip_adress]/wp-login.php", ange åtkomstinformationen och logga in på WordPress.

Installera CMS WordPress på en Linux-server

Du bör se en av WordPress-mallarna på huvudsidan.

Installera CMS WordPress på en Linux-server

Konfigurationen är klar.

WordPress åtkomstdetaljer:

  • http://[server’s_ip_address]/wp-login.php
  • Inloggning: wpadmin
  • Lösenord: Qwe123
❮ Föregående artikel Konfigurerar .htaccess-fil

Fråga oss om VPS

Vi är alltid redo att svara på dina frågor när som helst på dygnet.