In hierdie artikel sal ons jou stap-vir-stap instruksies gee oor hoe om webomgewing op 'n bediener met Linux op te stel. Eerstens moet u verstaan dat 'n tipiese webbediener uit 'n paar interaksiekomponente bestaan:
- HTTP-bediener
- programmeertaal tolk
- databasisbestuurstelsel (DBMS)
Om jou webwerf te bestuur sal jy ook 'n inhoudbestuurstelsel (CMS), 'n webkoppelvlak vir databasisbestuur en FTP-toegang moet opstel.
Kom ons oorweeg dit om 'n baie gewilde konfigurasie Apache-PHP-MySQL (MariaDB) op Linux op te stel. Ons sal ook vsftpd ftp-bediener, phpMyAdmin installeer - 'n webkoppelvlak vir databasisbestuur, en 'n inhoudbestuurstelsel WordPress.
Om te begin asseblief bestel VPS-bediener or dedicated server. Ons het byvoorbeeld 'n virtuele bediener met statiese IP-adres gebruik met Ubuntu Server 18.04. Alle opdragte is deur die wortelgebruiker uitgevoer.
Apache HTTP-bedienerkonfigurasie
1. Installasie
apt install apache2
Wanneer die installasie voltooi is, maak 'n blaaier oop en kontroleer "http://[bediener se_ip_adres]"
As jy 'n welkome bladsy soos hierdie op die skermkiekie hierbo sien, beteken dit dat jou HTTP-bediener werk.
2. Skep 'n toetsbladsy
Die standaard wortelgids vir die webwerf is "/var/www/html". Dit is waar jy die welkome bladsy kan vind wat jy sopas gesien het. Kom ons skep 'n aparte gids "/var/www/webwerwe" vir virtuele gashere en 'n subgids "/var/www/webwerwe/werf1" met die indeksbladsy van jou toetswebwerf.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
In die resultaat die lêer “/var/www/sites/site1/index.html” moet net een reël html-kode bevat:
<H1>Welcome</H1>
3. Apache-bedienerkonfigurasie
Konfigurasielêers van die webwerwe is in "/etc/apache2/sites-available/" katalogus. Kom ons skep 'n konfigurasielêer vir 'n nuwe virtuele gasheer wat die verstekkonfigurasie van die lêer neem "000-default.conf" as basis.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Maak die lêer oop "webwerf1.conf" en verander die "DocumentRoot" kenmerk. Stel die pad van jou webwerf as die waarde, so in ons geval is dit "/var/www/webwerwe/werf1"
Op hierdie stadium hoef ons nie die gelyktydige werking van verskeie webwerwe op te stel nie, so ons kan die verstekwebwerf deaktiveer en die nuwe webwerf aktiveer. Herlaai die bedienerkonfigurasie om die veranderinge toe te pas.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Maak die skakel oop "http://[bediener se _ip_adres]" weer en maak seker dat in plaas van die verstek welkom bladsy ons ons nuwe bladsy het.
Ons het die konfigurasie van ons HTTP-bediener voltooi en ons kan voortgaan na die volgende stap.
FTP-bedienerkonfigurasie
1. Installasie
Kom ons installeer ons ftp-bediener en 'n bykomende pakket "db-util", dat ons virtuele gebruikers sal moet konfigureer
apt install vsftpd db-util
2. Skep plaaslike rekening
Die vsftpd-bediener stel ons in staat om toegangstoestemmings op 'n baie buigsame manier op te stel. Vir ons take moet ons ftp-gebruikers van die volgende voorsien:
- volle toegang tot die inhoud van "/var/www/webwerwe/";
- deaktiveer alles wat hierbo is “/var/www/”;
- verbinding met 'n virtuele rekening;
Skep 'n plaaslike rekening "virtuele" sonder aanmeldtoestemming, maar met toegang tot tuisgids “/var/www/”. Hierdie rekening sal deur ftp-gebruikers gebruik word om aan die bediener te koppel
useradd -d /var/www virtual
"wortel" sal die eienaar wees van die “/var/www” gids by verstek. Om ftp-gebruikers in staat te stel om die inhoud van die webwerwe te verander, kom ons verander die eienaar van "/var/www/webwerwe/" insluitend subgidse van "virtuele".
chown -R virtual:root /var/www/sites
As gevolg hiervan, die gebruiker "virtuele" sal die inhoud van kan sien “/var/www/” en skryf in die "/var/www/webwerwe/" subgids.
3. opset
Die hoofkonfigurasie is in die lêer "/etc/vsftpd.conf", so kom ons maak dit oop en wysig dit soos volg:
#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. Skep die databasis
Jy sal 'n databasis nodig hê om data van virtuele rekeninge te stoor.
Laat ons eers 'n eenvoudige tekslêer skep "gebruikers.txt" in die tuisvouer en stoor toegangsbesonderhede (aanmelding en wagwoord) van virtuele gebruikers in elke ander reël. Ons sal byvoorbeeld 'n virtuele gebruiker met die aanmelding nodig hê "ftp" en wagwoord “Qwe123”. Dan sal die lêer soos volg lyk:
ftp
Qwe123
Kom ons skep die databasis
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Kom ons verander die verstek PAM-lêer "/etc/pam.d/vsftp" soos volg:
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
Neem asseblief kennis dat die pad van die “pam_userdb.so” biblioteek kan anders wees, maar jy kan dit verander indien nodig.
Herlaai die vsftpd-bediener om veranderinge toe te pas.
systemctl restart vsftpd
Ons het die FTP-bediener klaar gekonfigureer.
Verbinding besonderhede:
- ftp://[bediener se_ip_adres]
- aanmeld: ftp
- wagwoord: Qwe123
PHP bediener konfigurasie
1. Installasie van PHP
Vandag is die nuutste stabiele weergawe van PHP php 7.4.5 wat nie by amptelike Ubuntu-bewaarplekke ingesluit is nie. Kom ons koppel 'n derdeparty-bewaarplek en installeer die nuutste weergawe van PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Gaan na
Om vir PHP uitgevoer te word, moet die webbladlêer ".php" uitbreiding. Kom ons hernoem ons toetsbladsy:
cd /var/www/sites/site1/
mv index.html index.php
Voeg die volgende php-reël by die lêer “/var/www/sites/site1/index.php”, dus moet die lêer soos volg lyk:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Stoor die veranderinge en kyk na die resultaat in die blaaier.
As jy die resultaat van funksie sien "phpinfo()", werk die PHP-tolk behoorlik. Kom ons gaan nou voort na die volgende stap.
MySQL (MariaDB) konfigurasie
1. Installasie
Kom ons installeer MariaDB en 'n PHP-module vir MySQL en herlaai dan Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Verfris die toetsbladsy en gaan na die afdeling PDO in die PHP-konfigurasietabel. As jy die afdeling kan vind "PDO_mysql", dan beteken dit dat die bestuurder vir Mysql korrek geïnstalleer is.
Dan sal ons die aanvanklike sekuriteitsopstelling van MariaDB moet doen en die wagwoord vir die "Wortel" gebruiker, deaktiveer afstandtoegang en vee alle gasrekeninge uit.
mysql_secure_installation
By die eerste stap moet ons die "wortel" gebruiker se wagwoord om toegang tot DBMS te verkry of druk Enter as daar geen wagwoord is nie. Aangesien daar geen wagwoord vir die "wortel" gebruiker na installasie, druk net "Enter".
Neem asseblief kennis dat daar in MariaDB reeds sy eie rekeninge is wat niks met die OS-rekeninge te doen het nie. Die enigste gebruiker waarmee ons in MariaDB te doen het, is dus "wortel".
Daarna sal die konfigurator ons vra om die wagwoord vir die wortelgebruiker in te stel. Tik "Y" om te bevestig en die nuwe wagwoord in te voer. In ons geval is dit “Qwe123”
antwoord "Y" op al die res vrae tot aan die einde.
Konfigurasie is gedoen!
MariaDB toegang besonderhede:
- Aanmelding: root
- Wagwoord: Qwe123
phpMyAdmin-konfigurasie
1. Installasie
Kom ons installeer die nodige uitbreiding vir PHP - mbstring.
apt install php-mbstring
In die amptelike bewaarplek is daar net 'n verouderde weergawe van phpMyAdmin, so kom ons installeer die nuwe een met die hand.
Maak die amptelike webwerf van die projek oop "https://www.phpmyadmin.net/” en laai die nuutste argief af.
Kopieer die argief na die bediener in die "/var/www/webwerwe/" gids met enige ftp-kliënt.
Deargiveer die gids en hernoem dit na "phpMyAdmin". Moenie vergeet om die "uitrits" nut. Jy kan die argief uitvee nadat jy dit gedeargiveer het.
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
Skep die volgende gids “/var/www/sites/phpMyAdmin/tmp” vir tydelike lêers en maak toegang vir almal moontlik. As jy dit nie doen nie, sal phpMyAdmin rapporteer dat toegang tot die tydelike gids geweier is.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Skep 'n alias
Aangesien phpMyAdmin nie 'n aparte virtuele gasheer is nie en buite die wortelgids geleë is, laat ons die alias opstel.
Maak die lêer oop "/etc/apache2/mods-available/alias.conf" en voeg hierdie reël by:
Alias /pma “/var/www/sites/phpMyAdmin"
binne hierdie afdeling:
<IfModule alias_module>
</IfModule>
Herlaai Apache om die veranderinge toe te pas.
systemctl reload apache2
Alias is ingestel, so ons kan toegang tot phpMyAdmin hier kry "http://[bediener se_ip_adres]/pma".
3. Stel die databasis op
Aangesien ons die gebruik van wortelgebruiker tydens die aanvanklike konfigurasie van MariaDB beperk het, sal ons 'n nuwe rekening moet skep met alle toestemmings wat gebruik sal word om toegang tot phpMyAdmin te verkry.
Boonop het ons 'n diensdatabasis en 'n rekening nodig om toegang daartoe te verkry om bykomende kenmerke van phpMyAdmin te aktiveer.
Kom ons skep die rekeninge
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
Neem asseblief kennis dat die databasisnaam in die tweede versoek in die agterste vonke “... AAN `phpmyadmin`.* AAN 'pma'@'localhost' GEIDENTIFISEER DEUR …”,
In die resultaat sal daar twee rekeninge in MariaDB geskep word:
- Aanmelding: pma, wagwoord: Qwe123Volledige toegang, sal gebruik word om by phpMyAdmin aan te meld
- Aanmelding: pmaservice, Wagwoord: Qwe123Die diensrekening word vereis vir bykomende kenmerke om te werk
By die volgende stap sal ons hierdie besonderhede in die konfigurasielêer stel "config.inc.php".
Dan sal ons die databasis van die lêer moet invoer “phpMyAdmin/sql/create_tables.sql”.
Kom ons voer dit in met behulp van phpMyAdmin.
Maak die skakel oop "http://[bediener se_ip_adres]/pma"
Voer aanmelding in "pma" en wagwoord “Qwe123”
Gaan na "Import", Kliek "Kies lêer" en kies die lêer "sql/create_tables.sql" in die wortelgids van phpMyAdmin. Daar is veronderstel om die gids op jou rekenaar te wees "phpMyAdmin" met lêers. Deargiveer dit indien nodig.
Klik "Volgende" om te begin invoer.
4. opset
Kom ons kopieer die konfigurasielêer vanaf die sjabloon
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Kom ons maak die konfigurasielêer oop “/var/www/sites/phpMyAdmin/config.inc.php” en doen die volgende veranderinge:
Stel 'n ewekansige 32-karakterwaarde vir die kenmerk “$cfg['blowfish_secret']”. Gebruik enige wagwoordgenerator daarvoor..
Verwyder kommentaar van al die reëls van die "phpMyAdmin konfigurasie berging instellings" afdeling en stel die login en wagwoord van MariaDB se diensrekening vir die "beheer gebruiker" en "beheerpas" eienskappe dienooreenkomstig. In ons geval is dit pmadiens en Qwe123.
Stoor die veranderinge.
Toegang tot besonderhede vir phpMyadmin:
- http://[server’s_ip_address]/pma/
- Aanmelding: pma
- Wagwoord: Qwe123
Hoe om WordPress op 'n Linux-bediener te installeer en op te stel
1. WordPress pakket en lêers plasing
Gaan na die amptelike WP-webwerf "https://ru.wordpress.org/” en laai die argief af na jou plaaslike rekenaar.
Laai die argief op na die bediener in die "/var/www/webwerwe/" gids en deargiveer dit na die "wordpress"Gids.
Kopieer die inhoud van die “/var/www/webwerwe/wordpress/” wortelgids van die "/var/www/webwerwe/werf1/" webwerf.
Aangesien ons die lêers via die konsole met worteltoestemmings gekopieer het, laat ons die eienaar van die "/var/www/webwerwe/" gids insluitend die inhoud van "virtuele". Dit is nodig om volle toegang vir ftp-verbinding via die kliënt moontlik te maak.
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. Skep 'n databasis vir WordPress
Meld aan by phpMyAdmin en klik "Skep databasis". Spesifiseer 'n arbitrêre databasis naam, in ons geval "wordpress_db" en klik op die "Skep" knoppie.
Kies die nuwe databasis in die linker afdeling en klik "Voorregte"
Klik dan "Voeg gebruikerrekening by".
Voer die login en wagwoord in (wpdiens / Qwe123) in die oop venster, merk "Gee alle voorregte in die wordpress_db" en klik op "Volgende"
Klik op die volgende bladsy "Kanselleer alles" om alle voorregte op die databasisvlak terug te stel en klik "Volgende".
3. WordPress-konfigurasie op 'n Linux-bediener
Gaan na die wortelgids van u webwerf en kopieer die konfigurasielêer vanaf die sjabloon
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Maak die "wp-config.php" lêer en voer die databasisverbindingsparameters in wat ons by die vorige stap geskep het en stoor die veranderinge.
4. Installeer CMS WordPress
Maak die volgende skakel in die blaaier oop "http://[bediener se_ip_adres]/wp-admin/install.php".
Vul al die velde in en klik "Installeer WordPress". Stel 'n ewekansige gebruikersnaam en wagwoord in. In ons geval is dit wpadmin en Qwe123 dienooreenkomstig.
Hierdie besonderhede sal gebruik word om toegang tot WordPress te verkry.
Nadat u die installasie voltooi het, maak die skakel oop "http://[bediener se_ip_adres]/wp-login.php", voer die toegangsbesonderhede in en meld aan by WordPress.
U behoort een van die WordPress-sjablone op die hoofbladsy te sien.
Die konfigurasie is voltooi.
WordPress toegang besonderhede:
- http://[server’s_ip_address]/wp-login.php
- Aanmelding: wpadmin
- Wagwoord: Qwe123