Ushbu maqolada biz sizga Linux bilan ishlaydigan serverda veb-muhitni sozlash bo'yicha bosqichma-bosqich ko'rsatmalar beramiz. Avvalo, odatiy veb-server bir nechta o'zaro ta'sir qiluvchi komponentlardan iborat ekanligini tushunishingiz kerak:
- HTTP serveri
- dasturlash tili tarjimoni
- ma'lumotlar bazasini boshqarish tizimi (DBMS)
Veb-saytingizni boshqarish uchun siz shuningdek kontentni boshqarish tizimini (CMS), ma'lumotlar bazasini boshqarish uchun veb-interfeysni va FTP-ga kirishni sozlashingiz kerak bo'ladi.
Keling, Linuxda juda mashhur Apache-PHP-MySQL(MariaDB) konfiguratsiyasini o'rnatishni ko'rib chiqaylik. Shuningdek, biz vsftpd ftp serverini, phpMyAdmin - ma'lumotlar bazasini boshqarish uchun veb-interfeysni va WordPress kontentni boshqarish tizimini o'rnatamiz.
Boshlash uchun VPS serveri yoki ajratilgan serverni buyurtma qiling . Masalan, biz Ubuntu Server 18.04 da ishlaydigan statik IP-manzilga ega virtual serverdan foydalandik. Barcha buyruqlar root foydalanuvchisi tomonidan bajarildi.
Apache HTTP Server konfiguratsiyasi
1. o'rnatish
apt install apache2
O'rnatish tugagach, brauzerni oching va “http://[server's_ip_address]” ni tekshiring.
Yuqoridagi skrinshotda shunday salomlashish sahifasini ko'rsangiz, bu sizning HTTP serveringiz ishlayotganligini anglatadi.
2. Test sahifasini yarating
Veb-sayt uchun standart ildiz katalogi “/var/www/html” . Bu yerda siz hozirgina ko'rgan xush kelibsiz sahifasini topishingiz mumkin. Keling, virtual xostlar uchun alohida “/var/www/sites” katalogini va sinov veb-saytingizning indeks sahifasi bilan “/var/www/sites/site1” kichik papkasini yarataylik.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Natijada, “/var/www/sites/site1/index.html” faylida faqat bitta qator html kod bo'lishi kerak:
<H1>Welcome</H1>
3. Apache server konfiguratsiyasi
Veb-saytlarning konfiguratsiya fayllari “/etc/apache2/sites-available/” katalogida joylashgan. Keling , “000-default.conf” faylidan standart konfiguratsiyani asos qilib olgan holda yangi virtual xost uchun konfiguratsiya faylini yarataylik.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
“site1.conf” faylini oching va “DocumentRoot” atributini oʻzgartiring. Qiymat sifatida veb-saytingiz yoʻlini qoʻying, bizning holatimizda u “/var/www/sites/site1” boʻlsin.
Ushbu bosqichda biz bir nechta veb-saytlarning bir vaqtning o'zida ishlashini sozlashimiz shart emas, shuning uchun biz standart veb-saytni o'chirib qo'yishimiz va yangi saytni yoqishimiz mumkin. O'zgarishlarni qo'llash uchun server konfiguratsiyasini qayta yuklang.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
“http://[serverning _ip_address]” havolasini yana oching va standart xush kelibsiz sahifasi o'rniga yangi sahifamiz borligiga ishonch hosil qiling.
HTTP serverimiz konfiguratsiyasini tugatdik va keyingi bosqichga o'tishimiz mumkin.
FTP server konfiguratsiyasi
1. o'rnatish
Keling, ftp serverimizni va virtual foydalanuvchilarni sozlash uchun kerak bo'ladigan qo'shimcha "db-util" paketini o'rnatamiz.
apt install vsftpd db-util
2. Mahalliy hisob yaratish
Vsftpd serveri bizga kirish ruxsatlarini juda moslashuvchan tarzda sozlash imkonini beradi. Bizning vazifalarimiz uchun biz ftp foydalanuvchilariga quyidagilarni taqdim etishimiz kerak:
- mazmuniga to'liq kirish “/var/www/sites/”;
- yuqoridagi barcha narsalarni o'chirib qo'ying “/var/www/”;
- virtual hisob bilan ulanish;
Kirish ruxsatisiz, lekin "/var/www/" bosh papkasiga kirish huquqiga ega bo'lgan "virtual" mahalliy hisob yarating . Ushbu hisob ftp foydalanuvchilari tomonidan serverga ulanish uchun ishlatiladi.
useradd -d /var/www virtual
Sukut bo'yicha “Root” “/var/www” papkasining egasi bo'ladi . FTP foydalanuvchilariga veb-saytlar tarkibini o'zgartirishga imkon berish uchun, “virtual” ning pastki papkalarini ham qo'shib hisoblaganda “/var/www/sites/” egasini o'zgartiraylik.
chown -R virtual:root /var/www/sites
Natijada, “virtual” foydalanuvchisi “/var/www/” faylining tarkibini koʻrishi va “/var/www/sites/” pastki papkasiga yozishi mumkin boʻladi.
3. konfiguratsiya
Asosiy konfiguratsiya “/etc/vsftpd.conf” faylida joylashgan , shuning uchun uni ochib, quyidagicha tahrirlaymiz:
#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. Ma'lumotlar bazasini yarating
Virtual hisob ma'lumotlarini saqlash uchun sizga ma'lumotlar bazasi kerak bo'ladi.
Avvalo, asosiy papkada oddiy "users.txt" matnli faylini yarataylik va virtual foydalanuvchilarning kirish ma'lumotlarini (login va parol) har bir ikkinchi qatorga saqlaymiz. Masalan, bizga "ftp" login va "Qwe123" paroliga ega virtual foydalanuvchi kerak bo'ladi . Keyin fayl quyidagicha ko'rinadi:
ftp
Qwe123
Keling, ma'lumotlar bazasini yarataylik
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Keling, standart PAM fayli “/etc/pam.d/vsftp” ni quyidagicha oʻzgartiramiz :
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
Iltimos, “pam_userdb.so” kutubxonasining yo'li boshqacha bo'lishi mumkinligini unutmang, ammo agar kerak bo'lsa, uni o'zgartirishingiz mumkin.
O'zgarishlarni qo'llash uchun vsftpd serverini qayta yuklang.
systemctl restart vsftpd
Biz FTP serverini sozlashni tugatdik.
Ulanish tafsilotlari:
- ftp://[serverning_ip_manzili]
- Kirish: ftp
- parol: Qwe123
PHP server konfiguratsiyasi
1. PHP ni o'rnatish
Bugungi kunda PHP ning soʻnggi barqaror versiyasi php 7.4.5 boʻlib, u rasmiy Ubuntu omborlariga kiritilmagan. Keling, uchinchi tomon omborini ulaymiz va PHP ning eng so'nggi versiyasini o'rnatamiz.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Tekshiring
PHP bajarilishi uchun veb-sahifa fayli “.php” kengaytmasiga ega bo'lishi kerak. Keling, sinov sahifamizning nomini o'zgartiramiz:
cd /var/www/sites/site1/
mv index.html index.php
Quyidagi php qatorini “/var/www/sites/site1/index.php” fayliga qo'shing , shunda fayl quyidagicha ko'rinishi kerak:
<H1>Welcome</H1>
<?php
phpinfo();
?>
O'zgarishlarni saqlang va natijani brauzerda tekshiring.
Agar siz “phpinfo()” funksiyasining natijasini ko'rsangiz , PHP interpretatori to'g'ri ishlayapti. Endi keyingi bosqichga o'tamiz.
MySQL (MariaDB) konfiguratsiyasi
1. o'rnatish
Keling, MariaDB va MySQL uchun PHP modulini o'rnatamiz va keyin Apache-ni qayta yuklaymiz.
apt install mariadb-server php-mysql
systemctl restart apache2
Sinov sahifasini yangilang va PHP konfiguratsiya jadvalidagi PDO bo'limiga o'ting. Agar siz "PDO_mysql" bo'limini topsangiz , bu Mysql uchun drayver to'g'ri o'rnatilganligini anglatadi.
Keyin biz MariaDB ning dastlabki xavfsizlik konfiguratsiyasini bajarishimiz va "root" foydalanuvchisi uchun parolni o'rnatishimiz, masofaviy kirishni o'chirib qo'yishimiz va barcha mehmon hisoblarini o'chirishimiz kerak bo'ladi.
mysql_secure_installation
Birinchi bosqichda, ma'lumotlar bazasiga kirish uchun "root" foydalanuvchisining parolini kiritishimiz yoki parol bo'lmasa, Enter tugmasini bosishimiz kerak . O'rnatishdan so'ng "root" foydalanuvchisi uchun parol o'rnatilmaganligi sababli , shunchaki "Enter" tugmasini bosing.
Iltimos, MariaDB da allaqachon OT hisoblari bilan hech qanday aloqasi bo'lmagan o'z hisoblari mavjudligini unutmang. Shunday qilib, MariaDB da biz bilan ishlaydigan yagona foydalanuvchi bu "root".
Shundan so'ng, konfigurator bizdan root foydalanuvchisi uchun parolni o'rnatishimizni so'raydi. Tasdiqlash uchun "Y" ni tering va yangi parolni kiriting. Bizning holatda, bu "Qwe123"
Qolgan barcha savollarga oxirigacha "Y" deb javob bering .
Konfiguratsiya tugallandi!
MariaDB kirish tafsilotlari:
- Kirish: root
- Parol: Qwe123
phpMyAdmin konfiguratsiyasi
1. o'rnatish
Keling, PHP uchun kerakli kengaytmani o'rnatamiz - mbstring.
apt install php-mbstring
Rasmiy omborda phpMyAdmin-ning faqat eskirgan versiyasi mavjud, shuning uchun yangisini qo'lda o'rnatamiz.
Loyihaning rasmiy veb-saytini oching “ https://www.phpmyadmin.net/ ” va eng so'nggi arxivni yuklab oling.
Arxivni istalgan ftp mijozidan foydalanib, “/var/www/sites/” papkasidagi serverga nusxalang .
Papkani arxivdan chiqaring va uning nomini “phpMyAdmin” ga oʻzgartiring. “Unzip” yordam dasturini oʻrnatishni unutmang . Arxivni arxivdan chiqargandan soʻng uni oʻchirib tashlashingiz mumkin.
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
Vaqtinchalik fayllar uchun quyidagi “/var/www/sites/phpMyAdmin/tmp” papkasini yarating va hamma uchun kirishni yoqing. Agar buni qilmasangiz, phpMyAdmin vaqtinchalik papkaga kirish taqiqlanganligi haqida xabar beradi.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Taxallus yarating
PhpMyAdmin alohida virtual xost emasligi va asosiy katalogdan tashqarida joylashgani uchun taxallusni sozlaymiz.
“/etc/apache2/mods-available/alias.conf” faylini oching va quyidagi qatorni qo'shing:
Alias /pma “/var/www/sites/phpMyAdmin"
ushbu bo'lim ichida:
<IfModule alias_module>
</IfModule>
O'zgarishlarni qo'llash uchun Apache-ni qayta yuklang.
systemctl reload apache2
Alias o'rnatildi, shuning uchun biz phpMyAdmin-ga bu yerdan “http://[server's_ip_address]/pma” orqali kirishimiz mumkin.
3. Ma'lumotlar bazasini tayyorlang
MariaDB ning dastlabki konfiguratsiyasi paytida biz root foydalanuvchisidan foydalanishni cheklaganimiz sababli, phpMyAdmin-ga kirish uchun foydalaniladigan barcha ruxsatlarga ega yangi hisob yaratishimiz kerak bo'ladi.
Bundan tashqari, phpMyAdmin-ning qo'shimcha xususiyatlarini yoqish uchun bizga xizmat ma'lumotlar bazasi va unga kirish uchun hisob qaydnomasi kerak bo'ladi.
Keling, hisoblarni yarataylik
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
Iltimos, ikkinchi so'rovdagi ma'lumotlar bazasi nomi orqa tomonda “… ON `phpmyadmin` .* TO 'pma'@'localhost' identifikatori bilan …” degan xabarni ko'rsatayotganini unutmang.
Natijada, MariaDB-da ikkita hisob yaratiladi:
- Login: pma, Parol: Qwe123Toʻliq kirish, phpMyAdmin tizimiga kirish uchun foydalaniladi
- Kirish: pmaservice, Parol: Qwe123Qo'shimcha funktsiyalar ishlashi uchun xizmat hisobi talab qilinadi
Keyingi bosqichda biz ushbu ma'lumotlarni "config.inc.php" konfiguratsiya fayliga o'rnatamiz.
Keyin biz ma'lumotlar bazasini “phpMyAdmin/sql/create_tables.sql” faylidan import qilishimiz kerak bo'ladi.
Keling, uni phpMyAdmin yordamida import qilaylik.
“http://[serverning_ip_address]/pma” havolasini oching
“PMA” login va “Qwe123” parolini kiriting
“Import” bo‘limiga o‘ting , “Faylni tanlash” tugmasini bosing va phpMyAdmin’ning asosiy katalogidagi “sql/create_tables.sql” faylini tanlang . Kompyuteringizda fayllar joylashgan “phpMyAdmin” papkasi bo‘lishi kerak. Agar kerak bo‘lsa, uni arxivdan chiqaring.
Import qilishni boshlash uchun "Keyingi" tugmasini bosing .
4. konfiguratsiya
Keling, shablondan konfiguratsiya faylini ko'chiramiz
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Keling , “/var/www/sites/phpMyAdmin/config.inc.php” konfiguratsiya faylini ochamiz va quyidagi o'zgarishlarni amalga oshiramiz:
“$cfg['blowfish_secret']” atributi uchun tasodifiy 32 belgidan iborat qiymatni o'rnating . Buning uchun istalgan parol generatoridan foydalaning.
“phpMyAdmin konfiguratsiya saqlash sozlamalari” boʻlimining barcha satrlaridan izohlarni olib tashlang va MariaDB xizmat hisobining login va parolini “controluser” va “controlpass” atributlari uchun mos ravishda oʻrnating. Bizning holatimizda, bu pmaservice va Qwe123.
O'zgarishlarni saqlang.
phpMyadmin uchun kirish tafsilotlari:
- http://[server’s_ip_address]/pma/
- Kirish: pma
- Parol: Qwe123
WordPress-ni Linux serveriga qanday o'rnatish va sozlash
1. WordPress paketi va fayllarni joylashtirish
Rasmiy WP veb-saytiga " https://ru.wordpress.org/ " o'ting va arxivni mahalliy kompyuteringizga yuklab oling.
Arxivni serverga “/var/www/sites/” papkasiga yuklang va uni “wordpress ” papkasiga arxivdan chiqaring.
“/var/www/sites/ site1/” veb-saytining “/var/www/sites/ wordpress/” asosiy papkasining tarkibini nusxalash.
Fayllarni konsol orqali root ruxsatnomalari bilan nusxalaganimiz sababli, keling , “virtual” tarkibini oʻz ichiga olgan holda “/var/www/sites/” papkasining egasini oʻzgartiraylik . Bu mijoz orqali ftp ulanishiga toʻliq kirishni taʼminlash uchun talab qilinadi.
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. WordPress uchun ma'lumotlar bazasini yaratish
PhpMyAdmin-ga kiring va "Ma'lumotlar bazasini yaratish" tugmasini bosing. O'zboshimchalik bilan ma'lumotlar bazasi nomini belgilang, bizning holatlarimizda "wordpress_db" va "Yaratish" tugmasini bosing.
Chap qismda yangi ma'lumotlar bazasini tanlang va "Imtiyozlar" tugmasini bosing
Keyin "Foydalanuvchi hisobini qo'shish" tugmasini bosing.
Ochilgan oynada login va parolni ( wpservice / Qwe123 ) kiriting, "wordpress_db faylidagi barcha imtiyozlarni berish" katagiga belgi qo'ying va "Keyingi" tugmasini bosing.
Keyingi sahifada ma'lumotlar bazasi darajasidagi barcha imtiyozlarni tiklash uchun "Barchasini bekor qilish" tugmasini bosing va "Keyingi" tugmasini bosing.
3. Linux serverida WordPress konfiguratsiyasi
Veb-saytingizning asosiy katalogiga o'ting va shablondan konfiguratsiya faylini nusxalang
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
“wp-config.php” faylini oching va oldingi bosqichda yaratgan ma'lumotlar bazasi ulanish parametrlarini kiriting va o'zgarishlarni saqlang.
4. CMS WordPress-ni o'rnating
Brauzerda quyidagi havolani oching : “http://[server's_ip_address]/wp-admin/install.php”.
Barcha maydonlarni to'ldiring va “WordPressni o'rnatish” tugmasini bosing . Tasodifiy foydalanuvchi nomi va parolni o'rnating. Bizning holatimizda, bu mos ravishda wpadmin va Qwe123.
Ushbu tafsilotlar WordPress-ga kirish uchun ishlatiladi.
O'rnatishni tugatgandan so'ng, “http://[server's_ip_address]/wp-login.php” havolasini oching , kirish ma'lumotlarini kiriting va WordPress-ga kiring.
Asosiy sahifada WordPress shablonlaridan birini ko'rishingiz kerak.
Konfiguratsiya tugallandi.
WordPress kirish tafsilotlari:
- http://[server’s_ip_address]/wp-login.php
- Kirish: wpadmin
- Parol: Qwe123