Apache Nginx ortida

Assalomu alaykum, hurmatli Opennetchilar! Men bu maqolani uzoq tanaffusdan keyin, xuddi birinchi marta maqola yozayotganday yozayapman. Shuning uchun maqolada ortiqchalik yoki kamchiliklar bo'lsa ma'zur tutgaysizlar.

Maqolaning kirish qismi balki sizga uzunroqday tuyular, ammo o'quvchini men ushbu maqolada nima haqida yozishim haqida to'laroq tasavvur hosil qilishi va u nimalarga yechim bo'lishi haqida ko'proq narsa bilishini xohlaganim sababli shunday qildim.

Eslatma: Ushbu maqola Apache nimaligini va uni o'rnatib vhostlarni yaratib ishga tushirishni biladigan kishilarga mo'ljallangan.

Oramizda loyihalarini o'zlarining serverlarida yoki VDS/VPS (Virtual Dedicated/Private Server)larida web server ko'tarib ishga tushurgan kishilar ham bor. Ana shunday vaziyatlarda web sayt, loyihalar bilan ishlagan kishilar ilgari uchramangan ba'zi yangicha muammolarga duch kelishadi. Shulardan biri bu — resurs yetishmasligi, ya'ni loyihaning sifatli va bardavom ishlashi uchun server sifatida ishlatilayotgan kompyuterning fizik quvvati yetishmay qolishi kabi holatlardir.
Читать дальше

PHP: Ko'chirish tezligini chegaralash.

Salom. Anchadan beri ayrim sabablarga ko'ra maqola ham yoza olmadim. Bugun o'ylab-o'ylab nima haqida yozishni topdim. Manimcha bu narsa ko'pchilikka ham zarur bo'ladi. Hozirgi kunda Tas-Ix ham rivojlanib bormoqda va ko'pchilik yangi sayt ochayotganlar saytimdan nimalarni ko'chirishdi va har bir ko'chiruvchiga cheklangan ravishda tezlik berish haqida o'ylasa kerak.

Keling bugun shu muammolarni PHP da hal qilib bersam.
Читать дальше

PHP avtotekshiruvchi

Barchaga hayrli kun. Bugun ertalab turib shu blogga maqola qo`shish haqida o`ylab qoldim lekin mavzu ko`pligi sababli qaysi birini qo`yishni bilmayotgan edim.

PHP da avtotekshiruvchi

— saytga kiritilayotgan har qanday ma`lumotni tekshiradi. Ya`ni $_POST va $_GET orqali kiritilgan ma`lumotlarni. Nimaga kerak? Har doim oddiy kod yozaverib charchab ketganlar uchun qandaydir ma`noda yangilik. Formadan kiritilgan ma`lumotlarni qayta ishlab, ularni mavjudligiga tekshirish oson, qachonki ular kam bo`lsa. Agar POST orqali 10 ta ma`lumot kiritilsa ularni barchasini mavjudligiga tekshirish uchun !empty() dan juda ko`p bor foydalanishga to`g`ri keladi.
Читать дальше

PHP da oddiy captcha hosil qilamiz!


Bizga captcha nimaga kerakligini barchamiz yaxshi bilsak kerak! Bilmaganlar uchun oddiy qilib tushuntirib ketmoqchiman. Captcha internetdagi spamlardan, robotlardan bizning saytimizni himoyalaydi. Qanday himoyalaydi? Himoyalash userga, spamga, robotga savol berish orqaliy himoyalayid. Himoyalashning eng yaxshi variantlaridan biri bu rasm orqaliydir. Biz hozir php da captcha hosil qilishni o’rganamiz.
Читать дальше

PHP dasturlash, 2 yil davomidagi saboqlarim

Ushbu maqola mening blogimdagi birinchisi bo`lgani sababli urushmaysizlar degan umiddaman :).
Quyidagi maqola men qilgan xatoliklar va ular orqali olgan saboqlarim haqida. Kim uchundir balkim qo`l kelib qolar. Men takrorlagan hatolikni takrorlamasdan uning oson yechimidan foydalanasiz degan umiddaman.
1. Saboq: Hech qachon skriptni kelajagini o`ylamasdan tuzmang!!!
Dasturlash kimningdir qo`shimcha kimningdir asosiy manbai hisoblanadi. Unda mijoz bergan buyurtmani maksimal tez va sifatli qilib bajarish lozim. Lekin vaqtdan yutaman deb skriptni faqat xozirini o`ylab tuzish yaramaydi. Menga tushgan buyurtmalar bir vaqtni o`zida 2 3 ta bo`lgani sababli iloji boricha tez bitirishga harakat qilar edim. Kodlarni bir birini ichiga tiqib, ortiqcha fayl ishlatmaslik uchun hammasini case larni ichiga tiqar edim. Natija? Natijada kodni umuman boshqarib bo`lmaydigan bo`ldi va unga qo`shimcha ham kiritib bo`lmas edi. Menga buyurtma bergan mijozlar dastlab berilgan buyurtmaga o`zgartiirsh kiritishni so`raganlarida har safar boshqatdan yozib chiqar edim :(.
Читать дальше

YIi da ma’lumotlar bazasi tranzaksiyalari bilan ishlash

Ma’lumotlar bazasi bilan ishlayotganimizda ba’zida ma'lumotlar bazasiga bir vaqtning o’zida minglab so’rov yuborishga to’g’ri keladi. Bugun men shu holatga duch keldim. Ya’ni, jadvaldagi bir ustundagi ma’lumotga murojat qilib, undagi qiymatni mos xolda kerakli qiymatga o’zgartirishga to’g’ri keldi. Jadvaldagi qatorlar soni 2000 dan ortiqroq.
Читать дальше

Proxy orqali saytga kirgan foydalanuvchining haqiqiy IP manzilni aniqlash

Agar foydalanuvchi saytga proxy orqali kirgan bo'lsa, uni haqiqiy ip mazilini chiqaradi.

< ?php
if($HTTP_X_FORWARDED_FOR):
echo "Proxy Name $HTTP_VIA";
echo "Proxy IP $REMOTE_ADDR";
echo gethostbyaddr;
echo "Your Real IP $HTTP_X_FORWARDED_FOR";
else:
// agar klient proxy siz kirsa...
echo "Real IP $REMOTE_ADDR";
endif;
? >


Bu kodni ko'chirib oling va tekshirib ko'ring.
Читать дальше