🆖Ubuntu 20.04 da Nginx qanday o'rnatiladi
// Qo'llanma //
Ma'lumot
Talablar: Sizda Ubuntu 20.04 linux serveringiz bo'lishi kerak
Nginx dunyodagi eng mashhur veb-serverlardan biri bo'lib, internetdagi eng katta va eng yuqori trafikli saytlarni joylashtirish uchun javobgardir. Bu veb-server yoki teskari proksi sifatida ishlatilishi mumkin bo'lgan engil tanlovdir.
Ushbu qo'llanmada biz Nginx-ni Ubuntu 20.04 serveringizga qanday o'rnatish, xavfsizlik devorini sozlash, Nginx jarayonini boshqarish va bitta serverdan bir nechta domenlarni joylashtirish uchun server bloklarini sozlashni muhokama qilamiz.
1-qadam - Nginx-ni o'rnatish
apt
Nginx Ubuntu'ning standart omborlarida mavjud bo'lgani uchun uni qadoqlash tizimi yordamida ushbu omborlardan o'rnatish mumkin .
Ushbu sessiyada qadoqlash tizimi bilan birinchi o'zaro apt
aloqamiz bo'lgani uchun biz eng so'nggi paketlar ro'yxatiga kirishimiz uchun mahalliy paketlar indeksimizni yangilaymiz. Shundan so'ng biz o'rnatishimiz mumkin nginx
Jarayonni qabul qilgandan so'ng, apt
Nginx va kerakli bog'liqliklar serveringizga o'rnatiladi.
2-qadam - xavfsizlik devorini sozlash
Nginx-ni sinab ko'rishdan oldin xavfsizlik devori dasturi xizmatga kirishga ruxsat berish uchun sozlanishi kerak. Nginx o'rnatilgandan so'ng o'zini xizmat sifatida ro'yxatdan o'tkazadi ufw
, bu esa Nginx-ga kirishga ruxsat berishni osonlashtiradi.
ufw
Yozish orqali qanday ishlashni biladigan ilova konfiguratsiyalarini sanab o'ting:
Ilova profillari ro'yxatini olishingiz kerak:
Natijadan ko'rinib turibdiki, Nginx uchun uchta profil mavjud:
Nginx Full : Bu profil ikkala portni ham ochadi 80 (normal, shifrlanmagan veb-trafik) va port 443 (TLS/SSL shifrlangan trafik)
Nginx HTTP : Bu profil faqat 80-portni ochadi (oddiy, shifrlanmagan veb-trafik)
Nginx HTTPS : Bu profil faqat 443-portni ochadi (TLS/SSL shifrlangan trafik)
Siz sozlagan trafikka ruxsat beradigan eng cheklovchi profilni yoqish tavsiya etiladi. Hozir biz faqat 80-portda trafikka ruxsat berishimiz kerak.
Buni kiritish orqali yoqishingiz mumkin:
O'zgarishlarni quyidagi so'zlarni kiritish orqali tasdiqlashingiz mumkin:
Chiqish qaysi HTTP trafigiga ruxsat berilganligini ko'rsatadi:
3-qadam – Veb-serveringizni tekshirish
O'rnatish jarayoni oxirida Ubuntu 20.04 Nginx-ni ishga tushiradi. Veb-server allaqachon ishlayotgan bo'lishi kerak.
systemd
Xizmat ishlayotganiga ishonch hosil qilish uchun biz init tizimi bilan tekshirishimiz mumkin :
Bu tasdiqlaganidek, xizmat muvaffaqiyatli boshlandi. Biroq, buni sinab ko'rishning eng yaxshi usuli Nginx-dan sahifani so'rashdir.
Serveringizning IP manziliga o'tish orqali dasturiy ta'minot to'g'ri ishlayotganligini tasdiqlash uchun standart Nginx ochilish sahifasiga kirishingiz mumkin. Agar siz serveringizning IP-manzilini bilmasangiz, uni icanhazip.com vositasidan foydalanib topishingiz mumkin, bu sizga internetdagi boshqa joydan olingan umumiy IP manzilingizni beradi:
Serveringizning IP-manziliga ega bo'lsangiz, uni brauzeringizning manzil satriga kiriting:
Siz standart Nginx ochilish sahifasini olishingiz kerak:
Agar siz ushbu sahifada bo'lsangiz, serveringiz to'g'ri ishlayapti va uni boshqarishga tayyor.
4-qadam – Nginx jarayonini boshqarish
Endi veb-serveringiz ishga tushirilgandan so'ng, ba'zi asosiy boshqaruv buyruqlarini ko'rib chiqamiz.
Veb-serveringizni to'xtatish uchun quyidagilarni kiriting:
Veb-server to'xtatilganda uni ishga tushirish uchun quyidagilarni kiriting:
Xizmatni to'xtatib, keyin yana ishga tushirish uchun quyidagilarni kiriting:
Agar siz faqat konfiguratsiyani o'zgartirayotgan bo'lsangiz, Nginx ko'pincha ulanishlarni uzmasdan qayta yuklashi mumkin. Buning uchun yozing:
Odatiy bo'lib, Nginx server ishga tushganda avtomatik ravishda ishga tushadigan qilib tuzilgan. Agar bu siz xohlagan narsa bo'lmasa, quyidagini yozish orqali ushbu xatti-harakatni o'chirib qo'yishingiz mumkin:
Xizmatni yuklashda ishga tushirish uchun qayta yoqish uchun quyidagilarni yozishingiz mumkin:
Siz endi asosiy boshqaruv buyruqlarini o'rgandingiz va saytni bir nechta domenlarni joylashtirish uchun sozlashga tayyor bo'lishingiz kerak.
5-qadam – Server bloklarini sozlash (tavsiya etiladi)
Nginx veb-serveridan foydalanilganda, server bloklari (Apache-dagi virtual xostlarga o'xshash) konfiguratsiya tafsilotlarini inkapsulyatsiya qilish va bitta serverdan bir nechta domenlarni joylashtirish uchun ishlatilishi mumkin. Biz your_domain nomli domenni o'rnatamiz , lekin siz uni o'zingizning domen nomingiz bilan almashtirishingiz kerak .
Ubuntu 20.04 da Nginx sukut bo'yicha yoqilgan bitta server blokiga ega bo'lib, u katalogdan hujjatlarga xizmat ko'rsatish uchun sozlangan /var/www/html
. Bu bitta sayt uchun yaxshi ishlayotgan bo'lsa-da, agar siz bir nechta saytlarni joylashtirsangiz, u noqulay bo'lishi mumkin. ni o'zgartirish o'rniga, mijoz so'rovi boshqa saytlarga mos kelmasa, xizmat ko'rsatish uchun birlamchi katalog sifatida o'rnida qoldirib , your_domain saytimiz uchun /var/www/html
katalog tuzilmasini yarataylik ./var/www/var/www/html
Har qanday kerakli asosiy kataloglarni yaratish uchun bayroqdan foydalanib, domeningiz uchun quyidagi tarzda katalog yarating :-p
$USER
Keyin, atrof- muhit o'zgaruvchisi bilan katalogga egalik huquqini tayinlang :
umask
Agar siz standart fayl ruxsatlarini o'rnatgan qiymatingizni o'zgartirmagan bo'lsangiz, veb-ildizlaringizning ruxsatlari to'g'ri bo'lishi kerak . Ruxsatlaringiz to'g'ri ekanligiga ishonch hosil qilish va egasiga fayllarni o'qish, yozish va bajarishga ruxsat berish va guruhlarga va boshqalarga faqat o'qish va bajarish uchun ruxsat berish uchun siz quyidagi buyruqni kiritishingiz mumkin:
Keyin, yoki sevimli muharriringiz yordamida namuna index.html
sahifasini yarating:nano
Ichkarida quyidagi HTML namunasini qo'shing:
Faylni saqlang va yoping, Ctrl+X
chiqish uchun tugmasini bosing, so'ngra saqlash so'ralganda Y
va keyin Enter
.
Nginx ushbu tarkibga xizmat qilishi uchun to'g'ri ko'rsatmalarga ega server blokini yaratish kerak. Standart konfiguratsiya faylini to'g'ridan-to'g'ri o'zgartirish o'rniga, quyidagi manzilda yangisini yarataylik :/etc/nginx/sites-available/
your_domain
Standartga o'xshash, ammo yangi katalog va domen nomimiz uchun yangilangan quyidagi konfiguratsiya blokiga joylashtiring:
E'tibor bering, biz root
konfiguratsiyani yangi katalogimizga va server_name
domen nomimizga yangiladik.
sites-enabled
Keyinchalik, faylni ishga tushirish vaqtida Nginx o'qiydigan katalogga havola yaratib, uni yoqaylik:
Eslatma: Nginx server bloklaringizdan qaysi biri yoqilganligini kuzatish uchun ramziy havolalar yoki symlinks deb ataladigan keng tarqalgan amaliyotdan foydalanadi. Simli bog'lanishni yaratish diskda yorliq yaratishga o'xshaydi, shunda siz uni faollashtirmoqchi bo'lsangiz sites-enabled
, server blokini o'chirib qo'ygan holda keyinchalik katalogdan yorliqni o'chirib tashlashingiz mumkin.sites-available
listen
Endi ikkita server bloki yoqilgan va ularning va direktivalari asosida soʻrovlarga javob berish uchun sozlangan (Nginx ushbu direktivalarni qanday qayta ishlashi haqida bu yerdaserver_name
koʻproq oʻqishingiz mumkin ):
your_domainyour_domain
: va uchun so'rovlarga javob beradiwww.your_domain
.default
: 80-portdagi boshqa ikkita blokga mos kelmaydigan har qanday so'rovlarga javob beradi.
/etc/nginx/nginx.conf
Qo'shimcha server nomlarini qo'shish natijasida yuzaga kelishi mumkin bo'lgan xash paqir xotirasi muammosini oldini olish uchun faylda bitta qiymatni sozlash kerak . Faylni oching:
server_names_hash_bucket_size
Direktivni toping va #
chiziqni izohdan chiqarish uchun belgini olib tashlang. CTRL
Agar siz nano-dan foydalansangiz, va tugmalarini bosib fayldagi so'zlarni tezda qidirishingiz mumkin w
.
Eslatma: Kod satrlarini sharhlash - odatda satrning #
boshiga qo'yish - ularni o'chirishni talab qilmasdan o'chirishning yana bir usuli. Ko'pgina konfiguratsiya fayllari faol kod va hujjatlar o'rtasida almashinish orqali ularni yoqish yoki o'chirish uchun sharhlangan bir nechta variantlar bilan birga keladi.
Ish tugagach, faylni saqlang va yoping.
Keyin, Nginx fayllaringizning hech birida sintaksis xatosi yo'qligiga ishonch hosil qilish uchun sinab ko'ring:
Hech qanday muammo bo'lmasa, o'zgartirishlaringizni yoqish uchun Nginx-ni qayta ishga tushiring:
Nginx endi sizning domen nomingizga xizmat qilishi kerak. ga o'tish orqali buni sinab ko'rishingiz mumkin , bu erda siz shunga o'xshash narsani ko'rishingiz kerak:http://
your_domain
Nginx endi sizning domen nomingizga xizmat qilishi kerak. ga o'tish orqali buni sinab ko'rishingiz mumkin , bu erda siz shunga o'xshash narsani ko'rishingiz kerak:http://
your_domain
6-qadam – Muhim Nginx fayllari va kataloglari bilan tanishish
Endi siz Nginx xizmatini qanday boshqarishni bilganingizdan so'ng, bir necha muhim katalog va fayllar bilan tanishish uchun bir necha daqiqa vaqt ajratishingiz kerak.
Tarkib
/var/www/html
: Sukut bo'yicha faqat siz ilgari ko'rgan standart Nginx sahifasidan iborat bo'lgan haqiqiy veb-kontent/var/www/html
katalogdan tashqarida taqdim etiladi. Buni Nginx konfiguratsiya fayllarini o'zgartirish orqali o'zgartirish mumkin.
Server konfiguratsiyasi
/etc/nginx
: Nginx konfiguratsiya katalogi. Barcha Nginx konfiguratsiya fayllari shu yerda joylashgan./etc/nginx/nginx.conf
: Asosiy Nginx konfiguratsiya fayli. Bu Nginx global konfiguratsiyasiga o'zgartirish kiritish uchun o'zgartirilishi mumkin./etc/nginx/sites-available/
: Har bir sayt server bloklari saqlanishi mumkin bo'lgan katalog. Nginx ushbu katalogda topilgan konfiguratsiya fayllaridan foydalanmaydi, agar ular katalogga ulanmagan bo'lsasites-enabled
. Odatda, barcha server bloklari konfiguratsiyasi ushbu katalogda amalga oshiriladi va keyin boshqa katalogga ulanish orqali yoqiladi./etc/nginx/sites-enabled/
: Har bir sayt uchun yoqilgan server bloklari saqlanadigan katalog.sites-available
Odatda, ular katalogda joylashgan konfiguratsiya fayllariga ulanish orqali yaratiladi ./etc/nginx/snippets
: Ushbu katalog Nginx konfiguratsiyasining boshqa joylariga kiritilishi mumkin bo'lgan konfiguratsiya qismlarini o'z ichiga oladi. Potensial takrorlanadigan konfiguratsiya segmentlari parchalarga qayta ishlash uchun yaxshi nomzodlardir.
Server jurnallari
/var/log/nginx/access.log
: Veb-serveringizga yuborilgan har bir so'rov, agar Nginx boshqacha qilish uchun sozlanmagan bo'lsa, ushbu jurnal faylida qayd etiladi./var/log/nginx/error.log
: Har qanday Nginx xatolari ushbu jurnalda qayd etiladi.
Xulosa
Endi sizda veb-server o'rnatilgan bo'lsa, sizda xizmat ko'rsatish uchun kontent turi va yanada boyroq tajriba yaratish uchun foydalanmoqchi bo'lgan texnologiyalar uchun ko'plab variantlar mavjud.
Agar siz toʻliqroq ilovalar toʻplamini yaratmoqchi boʻlsangiz , Ubuntu 20.04 da Linux, Nginx, MySQL, PHP (LEMP stek) ni qanday oʻrnatish haqida maqolani koʻrib chiqing .
Last updated