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, bestel asseblief 'n VPS-bediener of toegewyde bediener . Ons het byvoorbeeld 'n virtuele bediener met 'n statiese IP-adres gebruik wat Ubuntu Server 18.04 laat loop. Alle opdragte is deur die root-gebruiker uitgevoer.
Apache HTTP-bedienerkonfigurasie
1. Installasie
apt install apache2
Wanneer die installasie klaar is, maak 'n blaaier oop en kyk na "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 verwelkomingsbladsy kan vind wat jy so pas gesien het. Kom ons skep 'n aparte gids "/var/www/sites" vir virtuele gashere en 'n subgids "/var/www/sites/site1" met die indeksbladsy van jou toetswebwerf.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
In die resultaat moet die lêer "/var/www/sites/site1/index.html" slegs een reël html-kode bevat:
<H1>Welcome</H1>
3. Apache-bedienerkonfigurasie
Konfigurasielêers van die webwerwe is in die "/etc/apache2/sites-available/" katalogus. Kom ons skep 'n konfigurasielêer vir 'n nuwe virtuele gasheer met die standaardkonfigurasie van die lêer "000-default.conf" as basis.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Maak die lêer “site1.conf” oop en verander die “DocumentRoot” -attribuut. Plaas die pad van jou webwerf as die waarde, so in ons geval is dit “/var/www/sites/site1”
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 “http://[bediener se _ip_adres]” weer oop en maak seker dat ons in plaas van die standaard verwelkomingsbladsy 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" , wat ons nodig het om virtuele gebruikers te 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 "virtueel" sonder aanmeldtoestemming, maar met toegang tot die tuisgids "/var/www/" . Hierdie rekening sal deur ftp-gebruikers gebruik word om aan die bediener te koppel.
useradd -d /var/www virtual
“Root” sal standaard die eienaar van die “/var/www” -vouer wees . Om ftp-gebruikers in staat te stel om die inhoud van die webwerwe te wysig, laat ons die eienaar van “/var/www/sites/” verander, insluitend subgidse van “virtual”.
chown -R virtual:root /var/www/sites
Gevolglik sal die gebruiker "virtueel" die inhoud van "/var/www/" kan sien en in die "/var/www/sites/" subgids kan skryf.
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.
Eerstens, laat ons 'n eenvoudige tekslêer "users.txt" in die tuisgids skep en toegangsbesonderhede (aanmeldnaam en wagwoord) van virtuele gebruikers in elke tweede reël stoor. Byvoorbeeld, ons benodig 'n virtuele gebruiker met die aanmeldnaam "ftp" en wagwoord "Qwe123" . Dan sal die lêer so lyk:
ftp
Qwe123
Kom ons skep die databasis
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Kom ons verander die standaard 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
Let asseblief daarop dat die pad van die "pam_userdb.so" -biblioteek dalk anders kan wees, maar u 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 PHP uit te voer, moet die webbladlêer die uitbreiding ".php" hê . 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" , sodat die lêer so moet lyk:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Stoor die veranderinge en kyk na die resultaat in die blaaier.
As jy die resultaat van die funksie "phpinfo()" sien , werk die PHP-interpreteerder 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 "PDO_mysql" kan vind , beteken dit dat die drywer vir Mysql korrek geïnstalleer is.
Dan sal ons die aanvanklike sekuriteitskonfigurasie van MariaDB moet doen en die wagwoord vir die "root" -gebruiker moet stel, afstandtoegang moet deaktiveer en alle gasrekeninge moet verwyder.
mysql_secure_installation
In die eerste stap moet ons die "root" -gebruiker se wagwoord invoer om toegang tot die DBMS te verkry, of Enter druk as daar geen wagwoord is nie. Aangesien daar geen wagwoord vir die "root" -gebruiker na die installasie gestel is nie, druk net "Enter".
Let asseblief daarop dat daar in MariaDB reeds sy eie rekeninge is wat niks met die OS-rekeninge te doen het nie. Dus is die enigste gebruiker waarmee ons in MariaDB te doen het "root".
Daarna sal die konfigurator ons vra om die wagwoord vir die root-gebruiker in te stel. Tik "Y" om te bevestig en voer die nuwe wagwoord in. In ons geval is dit "Qwe123".
Antwoord "Y" op al die res van die vrae tot die heel 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/sites/" -vouer met behulp van enige ftp-kliënt.
Deargief die lêergids en hernoem dit na "phpMyAdmin" . Moenie vergeet om die "unzip" -hulpprogram te installeer nie. Jy kan die argief verwyder nadat jy dit deargief gemaak 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 vouer "/var/www/sites/phpMyAdmin/tmp" vir tydelike lêers en aktiveer toegang vir almal. Indien u dit nie doen nie, sal phpMyAdmin toegang tot die tydelike vouer as geweier rapporteer.
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 "/etc/apache2/mods-available/alias.conf" oop 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 gestel, 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
Let asseblief daarop dat die databasisnaam in die tweede versoek in back sparks is "... ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY ...",
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
In die volgende stap sal ons hierdie besonderhede in die konfigurasielêer "config.inc.php" stel.
Dan moet ons die databasis vanaf die lêer "phpMyAdmin/sql/create_tables.sql" invoer.
Kom ons voer dit in met behulp van phpMyAdmin.
Maak die skakel “http://[bediener se_ip_adres]/pma” oop
Voer die aanmeldnaam “pma” en die wagwoord “Qwe123” in.
Gaan na “Invoer” , klik “Kies lêer” en kies die lêer ”sql/create_tables.sql” in die wortelgids van phpMyAdmin. Daar behoort die lêergids “phpMyAdmin” met lêers op jou rekenaar te wees. Deargiveer dit indien nodig.
Klik "Volgende" om invoer te begin.
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 "/var/www/sites/phpMyAdmin/config.inc.php" oop en doen die volgende veranderinge:
Stel 'n ewekansige waarde van 32 karakters vir die kenmerk "$cfg['blowfish_secret']" . Gebruik enige wagwoordgenerator daarvoor.
Verwyder kommentaar van al die reëls van die "phpMyAdmin configuration storage settings" afdeling en stel die aanmelding en wagwoord van MariaDB se diensrekening vir die "controluser" en "controlpass" eienskappe dienooreenkomstig. In ons geval is dit pmaservice 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 na jou plaaslike rekenaar af.
Laai die argief na die bediener op in die "/var/www/sites/" -vouer en deargiveer dit na die "wordpress "-vouer.
Kopieer die inhoud van die "/var/www/sites/wordpress/" wortelmap van die "/var/www/sites/site1/" webwerf.
Aangesien ons die lêers via die konsole met worteltoestemmings gekopieer het, laat ons die eienaar van die "/var/www/sites/" -lêergids verander, insluitend die inhoud van "virtual" . 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 gedeelte en klik op "Voorregte"
Klik dan op "Voeg gebruikersrekening by".
Voer die aanmeldnaam en wagwoord ( wpservice / Qwe123 ) in die oop venster in, merk "Verleen alle voorregte in die wordpress_db" en klik "Volgende".
Klik op die volgende bladsy op "Kanselleer alles" om alle voorregte op databasisvlak terug te stel en klik op "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 oop en voer die databasisverbindingsparameters in wat ons in die vorige stap geskep het en stoor die veranderinge.
4. Installeer CMS WordPress
Maak die volgende skakel in die blaaier oop : “http://[server's_ip_address]/wp-admin/install.php”.
Vul al die velde in en klik op "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 jy die installasie voltooi het, maak die skakel "http://[server's_ip_address]/wp-login.php" oop , 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