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, vänligen beställ en VPS-server eller 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 root-anvä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 hittar välkomstsidan du just såg. Låt oss skapa en separat katalog "/var/www/sites" 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 ska filen "/var/www/sites/site1/index.html" bara innehålla en rad html-kod:

<H1>Welcome</H1>

3. Apache-serverkonfiguration

Konfigurationsfiler för webbplatserna finns i katalogen “/etc/apache2/sites-available/” . Nu skapar vi en konfigurationsfil för en ny virtuell värd med 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 attributet "DocumentRoot" . Ange sökvägen till din webbplats som värde, så i vårt fall är 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 istället för standardvälkomstsidan har vår nya sida.

Apache-serverkonfiguration

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

FTP-serverkonfiguration

1. Installation

Nu installerar vi vår ftp-server och ytterligare ett paket "db-util" som vi behöver för att 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 "virtuellt" utan inloggningsbehörighet men med åtkomst till hemmappen "/var/www/" . Detta konto kommer att användas av ftp-användare för att ansluta till servern.

useradd -d /var/www virtual

"Root" kommer som standard att vara ägare till mappen "/var/www" . För att göra det möjligt för ftp-användare att ändra innehållet på webbplatserna, låt oss ändra ägaren till "/var/www/sites/" inklusive undermappar till "virtual".

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

Som ett resultat kommer den "virtuella" användaren att kunna se innehållet i "/var/www/" och skriva i undermappen "/var/www/sites/" .

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.

Först skapar vi en enkel textfil med namnet "users.txt" i hemmappen och sparar åtkomstuppgifter (inloggning och lösenord) för virtuella användare på varannan rad. Till exempel behöver vi en virtuell användare med inloggningen "ftp" och lösenordet "Qwe123" . Då kommer filen att se 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 biblioteket "pam_userdb.so" kan vara annorlunda, men du kan ändra den 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 kunna köras måste webbsidans fil ha filändelsen ".php" . 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å att filen ska 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 funktionen "phpinfo()" fungerar PHP-tolken korrekt. Nu går vi 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 hittar avsnittet "PDO_mysql" betyder det att drivrutinen för Mysql är korrekt installerad.

MySQL (MariaDB) installation och konfiguration

Sedan måste vi göra den initiala säkerhetskonfigurationen av MariaDB och ställa in lösenordet för "root" -användaren, inaktivera fjärråtkomst och ta bort alla gästkonton.

mysql_secure_installation

I första steget måste vi ange "root" -användarens lösenord för att komma åt DBMS eller trycka på Enter om det inte finns något lösenord. Eftersom det inte finns något lösenord angivet för "root" -användaren efter installationen, tryck bara på "Enter".

Observera att det i MariaDB redan finns egna konton som inte har något att göra med operativsystemkontona. Så den enda användaren vi har att göra med i MariaDB är "root".

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

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

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

Svara "J" på alla andra 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 projektets officiella webbplats " https://www.phpmyadmin.net/ " och ladda ner det senaste arkivet.

phpMyAdmin installation och konfiguration

Kopiera arkivet till servern i mappen "/var/www/sites/" med hjälp av valfri ftp-klient.

Avarkivera mappen och byt namn på den till “phpMyAdmin” . Glöm inte att installera verktyget “unzip” . Du kan radera 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 aktivera å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 den här raden:

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 finns i backsparks “… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY …”,

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 anger vi dessa detaljer i konfigurationsfilen "config.inc.php".

Sedan behöver 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 inloggningsnamnet ”pma” och lösenordet ”Qwe123”

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

phpmyadmin-konfiguration

Klicka på "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öra följande ändringar:

Ange 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 avsnittet "phpMyAdmin configuration storage settings" och ange inloggning och lösenord för MariaDBs servicekonto för attributen "controluser" och "controlpass" i enlighet därmed. I vårt fall är det 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 dator.

Ladda upp arkivet till servern till mappen "/var/www/sites/" och avarkivera det till mappen "wordpress ".

Kopiera innehållet i rotmappen "/var/www/sites/wordpress/" på webbplatsen "/var/www/sites/site1/".

Eftersom vi kopierade filerna via konsolen med root-behörigheter, låt oss ändra ägaren till mappen "/var/www/sites/" inklusive innehållet i "virtual" . Detta krävs för att möjliggöra fullständig å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 sektionen och klicka på "Privilegier"

Skapa en databas för WordPress

Klicka sedan på “Lägg till användarkonto”.

Ange inloggning och lösenord ( wpservice / Qwe123 ) i fönstret som öppnas, markera "Ge alla behörigheter i wordpress_db" och klicka på "Nästa".

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

På nästa sida klickar du på "Avbryt alla" för att återställa alla behörigheter på databasnivå och klickar på "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 filen "wp-config.php" och ange parametrarna för databasanslutning 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 på "Installera WordPress" . Ange ett slumpmässigt användarnamn och lösenord. I vårt fall är det wpadmin och Qwe123.

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

Installera CMS WordPress på en Linux-server

När du är klar med installationen, öppna länken “http://[serverns_ip_adress]/wp-login.php” , ange åtkomstuppgifterna 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
Nästa 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.