Kasbiy rivojlanish har doim o'z vositalariga e'tibor qaratadi - bu majburiyatlarning ishonchli va samarali bajarilishining kafolati. Ommabop konfiguratsiyalar qatoridagi turli maqsadlar uchun shaxsiy xosting va serverlar hal qilinishi kerak bo'lgan vazifalar ko'lamini kengaytiradi, ishlanmalarning xavfsizligi va maxfiyligini oshiradi.
Native HTTP: Apache, PHP, MySQL
Apache veb-serveri oʻtgan asrdan beri ishonchli yetakchi boʻlib kelmoqda, chunki u tezkor, ishonchli va xavfsiz tajribani taʼminlaydi. Linux yoki Windows bilan ishlaydigan jismoniy mashina va server asosdir, HTTP esa qo'shimcha hisoblanadi, garchi u asosan aloqa protokoli bo'lsa ham. Server sifatida Windows mashinasidan foydalanish mumkin, lekin Linux oilasiga afzallik beriladi.
Windows tizimidagi Apache tashqi serverlarda joylashtirilgan resurslarni ishlab chiqishni takrorlash uchun bitta mashinada foydalaniladigan mahalliy variantdir. Windows Serverga o'rnatish qabul qilinadi, lekin unchalik mashhur emas. CentO-larda Apache-ni o'rnatish ko'proq imkoniyatlar beradi va mahalliy va serverlarda serverlarni tashkil qilish uchun ishlatiladiglobal tarmoqlar.
Apache serverlari barcha faol veb-resurslarning 50% dan ortigʻiga xizmat qiladi, qolgan qismi Microsoft, Sun va boshqalarning shu kabi mahsulotlariga toʻgʻri keladi, deb ishoniladi. Aslida jismoniy server va uning operatsion tizimi har qanday narsa boʻlishi mumkin. HTTP serveri tayyor platformaga joylashtiriladi va undagi boshqa ilovalar bilan parallel ishlaydi. Apache butun Linux oilasi uchun mahalliy hisoblanadi, lekin har bir holatda uning o'ziga xos xususiyatlari bor.
Bepul, sodda, ishonchli Linux tizimlari va ularning ilovalari. Nimani ishlatishingiz muhim emas: Ubuntu-da Apache-ni o'rnatish va sozlash CentOs, Debian yoki FreeBSD-dan unchalik farq qilmaydi. Ko'pincha ma'lum bir operatsion tizimning qo'shimcha dasturiy ta'minot bilan to'yinganligi rol o'ynaydi.
Linux oilasi tizimning u yoki bu yadrosi chizig'idagi "qarindoshlar" soni bo'yicha kichikdir. Farqlar ko'proq ijtimoiy xususiyatga ega - ishlab chiquvchilarning operatsion tizim imkoniyatlarini shakllantirish va amalga oshirishga bog'liqligi ma'nosida.
Aslida xostingni oshirish boʻyicha aniq vazifani hal qilish uchun kerakli funksionallik, talab qilinadigan unumdorlik, kontseptual ustuvorliklar va Linux vakilining aniq tanlovi haqida qaror qabul qilishingiz yoki Windows Serverda toʻxtashingiz kerak.
Mahalliy rivojlanish ustuvorliklarida siljish
Dasturlashning rivojlanishida global tarmoqning rolini baholash qiyin, lekin tortishish markazining haqiqiy siljishini ko'rish oson: mahalliy ilovalarni veb-resurs sifatida bajarish odatiy holga aylandi. Buning uchun dastur yozingmahalliy kompyuter - bu drayverlar, antiviruslar, oddiy funksionallikka ega kichik loyihalar. Dasturlash tili … VBA, garchi C/C++ yoki C dan foydalanish mumkin.
Har qanday axborot loyihasi kompaniyaning mahalliy tarmogʻidagi veb-resurs boʻlib, unga global tarmoqdan qisman kirish mumkin, masalan, xodimlarning ofisdan tashqarida, yoʻlda yoki xizmat safarida harakatlarini muvofiqlashtirish mumkin.
MySQL, PHP, Apache: mahalliy foydalanish holati uchun sozlash - ilovaning butunlay boshqacha dinamikasi, kerakli funksionallik. Bugungi kompaniyalar hajmi, ishchilar soni va sohadan qat'i nazar, mahalliy va global Internetda dasturlash haqida jiddiy o'ylashmoqda.
Shu bilan birga, veb-resursni mahalliy dasturlash tarqatilishi mumkin: kompaniya ofislari istalgan joyda joylashgan bo'lishi mumkin, ammo bu Internet emas, balki kompaniyaning taqsimlangan mahalliy tarmog'i.
MySQL, PHP, Apache-ni mahalliy shaklda sozlash:
- tarmoqli kompyuterlarda koʻpaytirish oson;
- faol komponentni dinamik ravishda oʻzgartirish yoki xakerlik urinishlarini baholash uchun namuna bilan moslashtirish imkoniyatini beradi;
- klassik tarmoq usullari bilan hujum qilish xavfidan xoli xavfsizlik tizimini ishlab chiqish uchun asos beradi.
Agar Windows muhitidagi MySQL va Apache xizmatlar ekanligini va PHP kodi HTTP serveri tomonidan kerakli vaqtda chaqirilgan vosita (PHP tarjimoni) tomonidan qayta ishlangan oddiy matn ekanligini hisobga olsak, u holda oʻzgaruvchanlik darajasi, harakatchanlik va kodni ko'chirish bo'ladimahalliy rivojlanish vositalaridan ancha yuqori.
Apache oʻrnatilishiga tayyorlanmoqda
Hatto "boshlanishning boshlanishi" davrida ham Unix operatsion tizimi sodiqlikning so'zsiz tamoyillarini belgilab berdi. O'shandan beri Unix-ga o'xshash tizimlar ostida qilingan hamma narsa avtomatik ravishda boshqa platformalarga tarjima qilindi. Windows-da Apache-ni sozlash juda oson, ammo jiddiy vazifalar yaxshi tajriba va HTTP server konfiguratsiyasini batafsil tushunishni talab qiladi.
Avvalo, serverning soʻnggi versiyasini (bugungi kunda u 17.03.2018 yildagi 2.4.33 versiyasi) rasmiy veb-saytdan zip-arxiv formatida yuklab olishingiz kerak. Dastlab shuni yodda tutish kerakki, server versiyalari ko'p va ko'plab uchinchi tomon resurslarida taklif etiladi, shuning uchun ishonchli veb-resursda joylashtirilgan rasmiy dasturni tanlash muhimdir.
Avvallari serverni maxsus oʻrnatuvchi orqali oʻrnatish mashhur edi. Hozirgi kunda oddiygina zip arxivini kengaytirish odatiy holdir. Bu osonroq va konfiguratsiya jarayonining mohiyatini tushunishga imkon beradi, bu juda muhim va keyinchalik serverni kerakli yuk va funksionallik uchun optimallashtirish imkonini beradi.
Konfiguratsiya faylini tahrirlash
Server konfiguratsiyasi conf jildida joylashgan konfiguratsiya fayllari toʻplami bilan aniqlanadi. Asosiy Apache konfiguratsiya fayli
Aksariyat hollarda asosiy faylga oʻzgartirishlar kiritish, ssl va virtual xostlar uchun masʼul boʻlgan fayllar mazmunini aniqlashtirish kerak boʻladi. Boshqa sozlamalar odatdaserverning ishlashi paytida muammolar paydo bo'lishi yoki vazifalarni hal qilishda amalga oshiriladi. Asosan, keyingi sozlamalar Apache-ni optimallashtirish yoki uning imkoniyatlarini kengaytirish bilan bog'liq.
Serverni muvaffaqiyatli ishga tushirish uchun faqat bitta qatorni tahrirlash kifoya (tartibda - 38-chi) - va Apache konfiguratsiyasi tugallangan.
Server konfiguratsiyasining oldingi versiyalarida haqiqiy vaziyatga koʻplab oʻzgartirishlar kiritish kerak edi, ammo hozir “universal” SRVROOT oʻzgaruvchisi mavjud. Uning to'g'ri qiymatini (server joylashuviga yo'l) ko'rsatishga arziydi va hammasi darhol ishlaydi.
Serverni joylashtirish tartibi
Server joylashuvidan ehtiyot boʻlishingiz kerak. Apache-ning o'zi qiziq, lekin u PHP va MySQL bilan jihozlangan bo'lsa, u ikki baravar qiziqarli bo'ladi. Veb-ishlab chiqish bilan bog'liq hamma narsa bir joyda bo'lsa yaxshi bo'ladi. Siz standart yo'llarga rozi bo'lishingiz mumkin, ammo zamonaviy dasturlash uni amalga oshirishda unchalik ideal emas, shuning uchun barmog'ingizni pulsda aniq va tez-tez ushlab turishingiz kerak bo'ladi. Bundan tashqari, qulay joyni tanlashda barcha ishga tushirish va konfiguratsiya fayllari, shuningdek o'rnatilgan mahsulotlarning ishlashi jurnallari mavjud bo'ladi.
Yuklab olingan rasmiy Apache zip-arxivi tanlangan joyga joylashtirilishi, asbobni joylashtirishi va alohida ishlashi kerak. Bu misolda C:\SCiA papkasi vositadir (Apache24, PHP, MySQL, …) va SCiB papkasi yaratilgan, taʼminlanadigan yoki yangilanadigan veb-saytlarning ishi.
NatijadaIshning birinchi bosqichida faqat bin, cgi-bin, conf, error, … pastki papkalari barcha mazmuni bilan C:\SCiA\Apache24 jildiga tushadi.
Xost faylini tahrirlash
Ikkinchi qadam xostlar faylini to'g'ri sozlash - berilgan kompyuterdagi IP-manzillar qaysi nomlar bilan ko'rsatilganligini ko'rsatadi. Agar kompyuter faqat bitta saytni ishlab chiqsa yoki unga xizmat ko'rsatsa, siz hech narsani o'zgartira olmaysiz.
Asosiy IP - 127.0.0.1 odatda har doim localhostga ishora qiladi. Ishchi xostlar fayli c:\Windows\System32\drivers\etc manzilida joylashgan va shunday ko'rinadi.
Xostlar faylini toʻgʻri joyga qoʻyish uchun administrator rejimida buyruq qatoridan foydalanishingiz kerak. Faylning to'g'ri tarkibini kompyuteringiz fayl tizimining istalgan joyida tayyorlashingiz mumkin, lekin uni faqat administrator huquqlariga ega bo'lgan vosita bilan c:\Windows\System32\drivers\etc ga yozishingiz mumkin. Buni qilishning eng oson yo'li buyruq qatori orqali amalga oshiriladi.
Apache serverini oʻrnating
Bundan osonroq narsa yo'q. Buyruqlar satrini administrator sifatida ishga tushirish va C:\SCiA\Apache24 jildiga o'tish kifoya. Bu Windows tizimidagi yo'l bo'lgani uchun oldinga qiyshiq chiziqlar ishlatiladi. Muayyan holatda, yo'l boshqacha bo'lishi mumkin. Agar siz hali ham muqaddas uchlikni joylashtirish uchun papka nomi bilan tajriba o'tkazishingiz mumkin bo'lsa - Apache, PHP va MySQL - ularning har biri uchun papka nomini o'zgartirish maqsadga muvofiq emas.
Bunday holatda server arxivi C:/SCiA/Apache24 jildida joylashtirilgan,shuning uchun siz buyruqni bin papkasiga yozishingiz kerak:
httpd.exe -k o'rnatish
Server konfiguratsiya faylini sinab koʻradi va oʻzini oʻrnatadi. Katta ehtimol bilan kichik xatolar bo'ladi, lekin agar siz konfiguratsiya faylini to'g'ri tahrir qilsangiz, barcha xatolar ahamiyatsiz bo'lib, tezda tuzatilishi mumkin.
Buyruqlar qatorining oynasi (1) - xizmatni o'rnatish, oyna (2) - server paydo bo'lgan xizmatlar ro'yxati, oyna (3) - S:/SCiB manzilida joylashgan index.html manba fayli /localhost/www, oyna (4) - server natijasi.
Ushbu misolda ataylab xatoga yoʻl qoʻyilgan: SRVROOT oʻzgaruvchisi qiymatini belgilash oʻrniga “eski uslubda” koʻplab tahrirlar amalga oshirildi: hammasi qoʻlda oʻzgartirildi. Bu eng yaxshi yechim emas. Bilimlarni qo'llashdan oldin siz mahsulotning joriy versiyasi bilan tanishishingiz kerak. Qoidaga ko'ra, narsalar tez o'zgaradi va bilim "mavzuni bilish va mavjud vaziyatni tushunish bilan" qo'llanilishi kerak.
Zip arxivini joylashtirish amaliyoti
Zamonaviy saytlar har doim ham kontentni boshqarish tizimlarida yozilmaydi. Qo'l mehnati juda ko'p. Saytni boshqa xostingga o'tkazish muammosi yaxshi yechim - zip arxiviga olib keldi. Kontent bir joyda yopildi, boshqa joyda kengaytirildi.
O'rnatuvchiga ega bo'lish yaxshi amaliyot, ammo zamonaviy axborot texnologiyalari dinamikasi chiroyli o'rnatishlarni yozishga vaqt bermaydi. Zip-arxivni joylashtirish orqali o'rnatishdan foydalaning - zamonaviy, amaliy va qulay. Ushbu parametrda Apache konfiguratsiyasi konfiguratsiya fayllarini oʻzgartirish bilan cheklangan.
Serverni oʻrnatishda quyidagilarni belgilash muhim:
- u qayerda;
- veb-resurs joylashgan joyda (localhost);
- ssl-dan foydalanish;
- virtual xostlar.
Oxirgi pozitsiya serverda bir vaqtning o'zida bir nechta resurslarni ishlab chiqish yoki saqlash kerak bo'lganda tegishli. Haqiqiy dasturchi uchun bu bo'lishi shart: u bitta sayt ishini ta'minlasa ham, zaxiraga ega bo'lish ortiqcha bo'lmaydi.
Jentlmenlar toʻplami
Zip arxivini oʻrnatish oson, Apache (oʻrnatish va sozlash) ikki yoki uch marta bosish masofasida. Biroq, o'rnatuvchilar mashhur bo'lganida, natija bir xil edi. Ishlab chiqaruvchi o'z mahsulotining keyingi versiyasini ishlab chiqish uchun ko'proq vaqt sarfladi. Server, server tili va maʼlumotlar bazasini oʻrnatish aslida faqat fayllar toʻplami, ishga tushirish xizmatlari, xostlar fayli va operatsion tizim oʻzgaruvchan yoʻlidagi standart yoʻllardir.
Denver va shunga o'xshash janoblarning ishlab chiqish to'plamlarining paydo bo'lishi soddalik va qulaylik yo'lidagi inqilobiy qadam bo'ldi, lekin xato qilmang. Inqilob va dasturlash mutlaqo mos kelmaydigan narsalardir. Birinchisi, mojaroning bolasi va uning shiddatli hal etilishi, ikkinchisi - mutlaq xotirjamlik, aniqlik, aniqlik, izchillik, ehtiyotkorlik, xavfsizlik, ishonchlilikni talab qiladigan jiddiy masala.
Apache serverini sozlash juda ehtiyotkorlik bilan bajarilishi kerak boʻlgan jiddiy protsedura boʻlib, ertaga biror narsani oʻzgartirishingiz va aniqlashtirishingiz uchun hamma narsa bajarilishi kerak.
Ko'p hollarda veb-ishlab chiqishresurslar (Apache, PHP, MySQL, …) xizmatlarga qo'yiladigan talablar tez o'zgarib turadigan juda uzoq jarayonlar bo'lib, lekin keyingi vazifa va uning optimal yechimini tushunish uchun har doim vaqt bor. Ammo bu janoblar to'plami haqida davom etish uchun sabab emas. Vaqt o'tadi, lekin janob o'zgarmaydi, bu Denver deklaratsiyasiga qaraganda ancha ta'sirliroq dalil - bu oddiy, tez va tushunarli.
Bir nechta saytlar - bitta server
Apache 2.4-ni bitta xost uchun oʻrnatish - bu asossiz hashamatdir. O'zining ixcham dizayniga qaramay, ushbu server Internetning faol veb-resurslarining yarmidan ko'pi uchun katta mas'uliyat yuklaydi. Bundan tashqari, hamma resurslar ham tegishli qismga ega emas va ular tarmoqda ko‘rinmaydi.
Serverdan ma'lumotlar bazasi, axborot uzatish nuqtasi, filtr, tahlil qiluvchi, globalroq axborot jarayonida ishlaydigan mexanizm sifatida foydalanish mumkin. Natijada, Apache virtual xostlarini sozlash deyarli har doim zarur.
Bitta server xohlagancha veb-resurslarni qoʻllab-quvvatlashi mumkin, buning uchun httpd.conf faylidagi 501-qatorni izohdan olib tashlashingiz kerak:
Conf/extra/httpd-vhosts.conf qo'shing
va fayldagi barcha kerakli xostlarni tavsiflang
extra\httpd-vhosts.conf
Server qaysi portlar va IP-ni tinglayotganini aniqlab olishingiz kerak boʻlishi mumkin, ammo bu alohida masala, birinchi marta oʻzingizni nima bilan cheklashingiz mumkin.
Shuni ta'kidlash kerakki, misolda haqiqiy virtual veb-resurslarni tavsiflash qulayligi uchun (va ularning ko'plari mavjud) o'zgaruvchi kiritilgan(DOCROOT) oʻrnatilgan server orqali mavjud boʻlgan barcha veb-resurslarning umumiy jildiga yoʻl.
Apache SSL konfiguratsiyasi ham xuddi shunday tarzda mavjud. httpd.conf faylida SSL ishlashi uchun mas'ul bo'lgan 524 dan 531 gacha bo'lgan "xuddi shunday" qatorlarni qoldirish kifoya.
Apache soddaligi va murakkabligi
Serverni oʻrnatish juda qiyin boʻlgan kunlar allaqachon oʻtib ketdi. Bugungi kunda Apache-ni sozlash juda oddiy protsedura bo'lib, ishlab chiquvchidan maxsus ko'nikmalarni talab qilmaydi.
Uchta oson qadam:
- arxivni kengaytirish;
- konfiguratsiya faylini oʻzgartirish;
- serverni oʻrnating.
Natijada, Apache toʻliq ishlaydi. Agar siz serverni maksimal yuklashda ishga tushirish jarayonining nozik tomonlarini hisobga olmasangiz yoki Windows kompyuterida mahalliy ishlab chiqishni amalga oshirmasangiz, qo'shimcha bilim talab etilmaydi.
Linux tizimlarida qiyinchiliklar paydo boʻlishi mumkin. Fayl tizimini, foydalanuvchi va guruh huquqlarini, shuningdek, boshqa ilovalar bilan o‘zaro aloqalar jarayonini tashkil etishni sezilarli darajada farqlash ishlab chiquvchidan ko‘proq malakali bo‘lishni va Linux kompyuterlari qanday ishlashini tushunishni talab qiladi.
Har qanday Linux tizimida Apache-ni sozlash dasturchi uchun ko'proq imkoniyatlarni ochib beradi va mahalliy tarmoq va Internetga kirishni ta'minlaydi. An'anaga ko'ra, Windows kompyuteri mahalliy ish stantsiyasidir va u erda server ichki bo'ladi. Linux kompyuteri bu fayl serveri, veb-server va mahalliy tarmoq tugunlari yoki Internet maydonidagi nuqtadir.
Professional muhitdasturchi
Apache - oson va oson sozlanishi, ishlatilishi mumkin boʻlgan va kompaniya tarmoq infratuzilmasining asosiga aylanadigan Internet makonining asosiy blokidir.
Bu mantiq tarmoqda CentOS, Ubuntu, FreeBSD, Windows ish stantsiyalari bilan ishlaydigan kamida bitta server mavjudligini taxmin qiladi. Windows muhitida mahalliy kompyuter uchun ikkita Linux serveri (asosiy va yordamchi), Apache sozlanishi optimal hisoblanadi. Virus hujumi yoki kutilmagan vaziyat yuzaga kelganda, yordamchi server asosiy serverni almashtiradi va asosiy server ta'mirlanadi va tiklanadi. Siz arxivdan ish stantsiyasida (Windows ostida) Apache-ning mahalliy o'rnatilishini almashtirishingiz mumkin.
Bu arzimas yechim haqiqiy amaliyotda takomillashtirilishi va toʻldirilishi mumkin. Kompaniyaning axborot oqimlari hajmi kerakli konfiguratsiyani va kerakli serverlar sonini aniqlashi mumkin. Aslida, Apache yuk ostida ishlash uchun mo'ljallangan, ammo hech narsa sizga bitta serverning mas'uliyatini bir nechta serverlarga taqsimlashga to'sqinlik qilmaydi. Muayyan kompaniyaning xususiyatlarini inobatga olgan yechim har doim uchinchi tomon variantini moslashtirishdan ko'ra istiqbolliroqdir.