Muchikamu chino, tichakupa nhanho-nhanho mirairo yekuti ungagadzirisa sei webhu nharaunda pane sevha inoshandisa Linux. Chekutanga zvinhu kutanga, iwe unofanirwa kunzwisisa kuti yakajairwa webhu server ine mashoma anodyidzana zvikamu:
- HTTP server
- muturikiri wemutauro wepurogiramu
- Database management system (DBMS)
Kuti utore webhusaiti yako iwe zvakare uchafanirwa kuseta yemukati manejimendi system (CMS), yewebhu interface ye database manejimendi, uye FTP kuwana.
Ngatifungei kumisikidza yakakurumbira gadziriso Apache-PHP-MySQL(MariaDB) paLinux. Isu tichaisawo vsftpd ftp server, phpMyAdmin - yewebhu interface ye database manejimendi, uye yemukati manejimendi system WordPress.
Kuti mutange, ndapota odhai VPS server kana dedicated server . Semuenzaniso, takashandisa virtual server ine static IP address inoshandisa Ubuntu Server 18.04. Mirairo yese yaiitwa nemushandisi mukuru.
Apache HTTP Server kumisikidzwa
1. kugadzwa
apt install apache2
Kana kuiswa kwapera, vhura browser wobva watarisa “http://[server's_ip_address]”
Kana iwe ukaona peji rekugamuchira seizvi pane skrini iri pamusoro, zvinoreva kuti sevha yako yeHTTP iri kushanda.
2. Gadzira peji rekuedza
Dhairekitori remidzi rewebhusaiti ndiro “/var/www/html” . Apa ndipo paunogona kuwana peji rekugamuchira rawangoona. Ngatigadzirei dhairekitori rakasiyana “/var/www/sites” rema virtual hosts uye subfolder “/var/www/sites/site1” rine peji re index rewebhusaiti yako yekuyedza.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Mumhedzisiro yacho faira rekuti "/var/www/sites/site1/index.html" rinofanira kunge riine mutsetse mumwe chete wekodhi ye html:
<H1>Welcome</H1>
3. Apache server configuration
Mafaira ekugadzirisa mawebhusaiti ari mu "/etc/apache2/sites-available/" catalog. Ngatigadzirei faira rekugadzirisa re "virtual host" itsva tichitora gadziriro yekutanga kubva kufaira rekuti "000-default.conf".
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Vhura faira rekuti “site1.conf” wobva wachinja hunhu hwekuti “DocumentRoot” . Isa nzira yewebhusaiti yako semutengo wayo, saka kwatiri i “/var/www/sites/site1”
Panguva ino hatidi kugadzirisa kushanda panguva imwe chete kwemawebhusaiti akawanda, saka tinokwanisa kudzima iyo default webhusaiti uye kugonesa saiti itsva. Rerodhazve sevha yekumisikidza kuti ushandise shanduko.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Vhura link inoti “http://[server's _ip_address]” zvakare uye iva nechokwadi chekuti pane peji rekugamuchira renguva dzose tine peji redu idzva.
Isu tapedza kumisikidza yedu HTTP server uye isu tinogona kuenderera kune inotevera nhanho.
FTP server kumisikidza
1. kugadzwa
Ngatiisei server yedu ye ftp pamwe ne "db-util" imwe package , yatichada kugadzirisa vashandisi vepaindaneti.
apt install vsftpd db-util
2. Gadzira account yako
Iyo vsftpd server inotibvumira kugadzirisa mvumo yekuwana nenzira inoshanduka. Kune mabasa edu isu tinoda kupa vashandisi veftp neinotevera:
- kuwana zvizere kune zviri mukati me "/var/www/saiti/";
- dzima zvese zviri pamusoro "/var/www/";
- kubatana neiyo virtual account;
Gadzira account yemuno "virtual" pasina mvumo yekupinda asi uine mukana wekupinda muforodha repamba "/var/www/" . Account iyi ichashandiswa nevashandisi ve ftp kubatanidza kune sevha.
useradd -d /var/www virtual
"Root" ndiyo ichave muridzi we "/var/www" folda. Kuti vashandisi ve ftp vagone kugadzirisa zviri mumawebhusaiti, ngatichinje muridzi we "/var/www/sites/" kusanganisira mafolda madiki e "virtual".
chown -R virtual:root /var/www/sites
Nekuda kweizvozvo, mushandisi "virtual" achakwanisa kuona zviri mu "/var/www/" uye onyora mu "/var/www/sites/" subfolder.
3. Kugadziriswa
Chigadziro chikuru chiri mufaira rekuti “/etc/vsftpd.conf” , saka ngatirivhure torigadzirisa seinotevera:
#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. Gadzira dhatabhesi
Iwe unozoda dhatabhesi kuitira kuchengetedza data remaakaundi account.
Kutanga, ngatigadzirei faira remavara riri nyore rekuti “users.txt” muforodha repamba uye chengetedza ruzivo rwekupinda (login nepassword) rwevashandisi vepakombiyuta mune mimwe mitsara yese. Semuenzaniso, tichada mushandisi wepakombiyuta ane "ftp" nepassword yekupinda "Qwe123" . Zvadaro faira racho richataridzika seizvi:
ftp
Qwe123
Ngatigadzirei database
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Ngatigadzirise faira rePAM re "/etc/pam.d/vsftp" seizvi:
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
Ndapota cherechedzai kuti nzira yeraibhurari ye "pam_userdb.so" inogona kunge yakasiyana asi munogona kuichinja kana zvichidikanwa.
Rodhazve iyo vsftpd server kuti ushandise shanduko.
systemctl restart vsftpd
Takapedza kugadzirisa FTP server.
Mashoko ekubatanidza:
- ftp://[server's_ip_address]
- login: ftp
- password: Qwe123
PHP server kumisikidza
1. Kuiswa kwePHP
Nhasi iyo yazvino yakagadzikana vhezheni yePP ndeye php 7.4.5 iyo isina kubatanidzwa mune zvepamutemo Ubuntu repositori. Ngatibatanidzei chechitatu-bato repository uye tiise yazvino vhezheni yePP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Tarisa
Kuti PHP iite basa, faira rewebhu rinofanira kunge riine ".php" extension. Ngatitumidzei zita idzva repeji redu rekuyedza:
cd /var/www/sites/site1/
mv index.html index.php
Wedzera mutsetse wephp unotevera kufaira "/var/www/sites/site1/index.php" , saka faira rinofanira kutaridzika seizvi:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Sevha shanduko uye tarisa mhedzisiro mubrowser.
Kana ukaona mhedzisiro yebasa rekuti “phpinfo()” , muturikiri wePHP ari kushanda nemazvo. Iye zvino ngatiendererei kunhanho inotevera.
MySQL (MariaDB) kugadzirisa
1. kugadzwa
Ngatiisei MariaDB uye PHP module yeMySQL uye tozorodhazve Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Tangazve peji rekuyedza woenda kuchikamu chePDO chiri mutafura yekugadziriswa kwePHP. Kana ukakwanisa kuwana chikamu chinonzi “PDO_mysql” , zvinoreva kuti dhiraivha yeMysql yakaiswa nemazvo.
Zvadaro tichafanira kutanga tagadzirisa MariaDB toisa password yemushandisi we "root" , todzima remote access, todzima maakaundi ese evaenzi.
mysql_secure_installation
Padanho rekutanga, tinofanira kuisa password yemushandisi we "root" kuti tisvike paDBMS kana kudzvanya Enter kana pasina password. Sezvo pasina password yakagadzirirwa mushandisi we "root" mushure mekuisa, ingodzvanya "Enter".
Ndokumbirawo mucherechedze kuti muMariaDB matova nemaakaundi ayo asina chekuita nemaakaundi eOS. Saka mushandisi wega watinoshanda naye muMariaDB ndi "root".
Mushure meizvozvo, configurator ichatikumbira kuti tiise password yemushandisi weroot. Nyora "Y" kuti usimbise uye uise password itsva. Muchiitiko chedu, i "Qwe123"
Pindura “Y” kumibvunzo yese yasara kusvika kumagumo.
Configuration yaitwa!
MariaDB yekuwana ruzivo:
- Login: mudzi
- Password: Qwe123
phpMyAdmin kugadzirisa
1. kugadzwa
Ngatiisei kuwedzerwa kunodiwa kwePHP - mbstring.
apt install php-mbstring
Munzvimbo inochengeterwa zviri pamutemo pane chete vhezheni yechinyakare yephpMyAdmin, saka ngatiise iyo itsva nemaoko.
Vhura webhusaiti yepamutemo yepurojekiti iyi " https://www.phpmyadmin.net/ " uye dhawunirodha zvinyorwa zvitsva.
Kopa zvakachengetwa kuseva iri mu "/var/www/sites/" folda uchishandisa chero ftp client.
Bvisa folda yacho woitumidza zita idzva kuita “phpMyAdmin” . Usakanganwa kuisa chishandiso che “unzip” . Unogona kudzima archive mushure mekunge waibvisa.
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
Gadzira forodha inotevera "/var/www/sites/phpMyAdmin/tmp" yemafaira echinguvana uye ita kuti munhu wese akwanise kupinda. Kana ukasaita izvi, phpMyAdmin ichataura kuti forodha yechinguvana yarambidzwa kupinda.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Gadzira arias
Sezvo phpMyAdmin isiri yakaparadzana chaiyo inomiririra uye iri kunze kweiyo midzi dhairekitori, ngatigadzirise alias.
Vhura faira "/etc/apache2/mods-available/alias.conf" wobva wawedzera mutsetse uyu:
Alias /pma “/var/www/sites/phpMyAdmin"
mukati mechikamu chino:
<IfModule alias_module>
</IfModule>
Reload Apache kushandisa shanduko.
systemctl reload apache2
Zita rekuti "Alias" ragadziriswa, saka tinogona kuwana phpMyAdmin pano "http://[server's_ip_address]/pma".
3. Gadzirira dhesi
Sezvo isu takarambidza kushandisa midzi mushandisi panguva yekutanga kumisikidzwa kweMariaDB, isu tichafanirwa kugadzira account nyowani ine mvumo yese ichashandiswa kuwana phpMyAdmin.
Kunze kwezvo, kugonesa mamwe maficha ephpMyAdmin isu tichada sevhisi dhatabhesi uye account kuti tiwane iyo.
Ngatigadzirei maakaundi
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
Ndapota cherechedzai kuti zita re database muchikumbiro chechipiri riri mu back sparks “… ON `phpmyadmin` .* KUTI 'pma'@'localhost' INOZIVISWA NE …”,
Mumhedzisiro, pachave nemaakaundi maviri akagadzirwa muMariaDB:
- Login: pma, Password: Qwe123Yakazara kuwana, ichashandiswa kupinda mu phpMyAdmin
- Login: pmaservice, Password: Qwe123The service account inodiwa kuti mamwe maficha ashande
Padanho rinotevera, tichaisa ruzivo urwu mufaira rekugadzirisa "config.inc.php".
Zvadaro tichazofanira kupinza database kubva kufaira rekuti “phpMyAdmin/sql/create_tables.sql”.
Ngatitorei kunze nerubatsiro rwephpMyAdmin.
Vhura chinongedzo chinoti “http://[server's_ip_address]/pma”
Isa "pma" uye password "Qwe123" pakupinda.
Enda ku "Import" , tinya "Sarudza faira" wobva wasarudza faira "sql/create_tables.sql" mudhairekitori remidzi yephpMyAdmin. Panofanirwa kunge paine folda iri paPC yako inonzi "phpMyAdmin" ine mafaira. Bvisa muarchive kana zvichidikanwa.
Dzvanya "Next" kuti utange kupinza.
4. Kugadziriswa
Ngatikopei faira rekugadzirisa kubva patemplate
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Ngativhure faira rekugadzirisa "/var/www/sites/phpMyAdmin/config.inc.php" toita shanduko dzinotevera:
Isa kukosha kwemavara makumi matatu nemaviri pasina kurongeka kwechinhu chinonzi “$cfg['blowfish_secret']” . Shandisa chero chinhu chinogadzira mapassword..
Bvisa makomendi kubva pamitsetse yese yechikamu che "phpMyAdmin configuration storage settings" woisa login nepassword yeMariaDB's service account ye "controluser" uye "controlpass" zvinoenderana. Muchiitiko chedu, pmaservice uye Qwe123.
Sevha shanduko.
Svika ruzivo rwephpMyadmin:
- http://[server’s_ip_address]/pma/
- Login: pma
- Password: Qwe123
Maitiro ekuisa uye kugadzirisa WordPress pane Linux server
1. WordPress package uye mafaira ekuisa
Enda kuwebhusaiti yepamutemo yeWP " https://ru.wordpress.org/ " wodhawunirodha zvakachengetwa kuPC yako yemuno.
Isa dhairekitori kuseva muforodha rekuti "/var/www/sites/" wobva wabvisa muforodha rekuti "wordpress ".
Kopa zviri mu "/var/www/sites/wordpress/" root folder yewebhusaiti ye "/var/www/sites/site1/".
Sezvo takakopa mafaira kuburikidza nekombuta nemvumo yemidzi, ngatichinje muridzi weforodha rekuti “/var/www/sites/” kusanganisira zviri mu “virtual” . Izvi zvinodiwa kuti tikwanise kuwana mukana wakazara wekubatanidza neFTP kuburikidza neclient.
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. Gadzira database ye WordPress
Pinda ku phpMyAdmin uye tinya "Gadzira database". Rondedzera zita rekupokana re database, kwatiri "wordpress_db" uye tinya bhatani rekuti "Gadzira".
Sarudza dhatabhesi itsva iri kuruboshwe wobva wadzvanya "Privileges"
Wobva wadzvanya "Wedzera account yemushandisi".
Isa login nepassword ( wpservice / Qwe123 ) muhwindo rakavhurwa, sarudza "Grant all privileges in the wordpress_db" wobva wadzvanya "Next"
Papeji rinotevera tinya "Cancel all" kuti udzorerezve kodzero dzese padanho re database wobva wadzvanya "Next".
3. WordPress kugadzirisa pane Linux server
Enda kune midzi dhairekitori yewebhusaiti yako uye kopi iyo yekumisikidza faira kubva kune template
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Vhura faira rekuti "wp-config.php" wobva waisa ma parameter ekubatanidza database atakaita padanho rekare wochengetedza shanduko dzacho.
4. Isa CMS WordPress
Vhura chinongedzo chinotevera mubrowser "http://[server's_ip_address]/wp-admin/install.php".
Zadza minda yese wobva wadzvanya "Isa WordPress" . Isa zita rekushandisa nepassword zvisina kurongeka. Muchiitiko chedu, i wpadmin uye Qwe123 zvinoenderana.
Mashoko aya achashandiswa kuwana WordPress.
Kana wapedza kuisa, vhura chinongedzo chinoti “http://[server's_ip_address]/wp-login.php” , isa ruzivo rwekupinda, uye pinda muWordPress.
Iwe unofanirwa kuona imwe ye WordPress templates pane huru peji.
Kugadzirisa kwapera.
WordPress kuwana ruzivo:
- http://[server’s_ip_address]/wp-login.php
- Login: wpadmin
- Password: Qwe123