برچسب Archives: php

نصب webmin سرور Ubuntu برای هاستینگ

به نام دانای بر حق

مقدمه

برای کنترل و تسهیل عملکرد سرور ها از کنترل پنل های مختلف استفاده میشه یکی از این کنترل پنل ها webmin هستش که قابلیت های خوبی داره علاوه بر کنترل پنل بودن برای هاست میتونه خدمات دیگه ارائه بده که موضوع بحث ما نیست، و متن باز بودنش مزید بر علت هستش، اما این کنترل پنل یک کنترل پنل مدرن هستش که با رابط کاربری ساده میتونه امکانات بسیار زیادی رو در اختیار شما قرار بده در این آموزش با نحوه نصب این کنترل پنل آشنا میشم. لازم به ذکر است که سیستم عامل های زیادی رو پشتیبانی میکنه که اخیرا حتی ویندوز هم اضافه شده و به نوعی میشه گفت نصبش هم فوق العاده ساده هستش.

آماده سازی سیستم عامل

برای آماده کردن Ubuntu خود دستورات زیر رو تاییپ کنید تا مخازن مربوط به این پکیج به شما اضافه بشه:

دستور و در ترمینال یا ssh باید وارد کنید

 

و بعد در خط انتهایی این نوشته رو اضافه میکنید:

توجه داشته باشید آسیبی به سایر خطوط نزنید

برای ذخیره کردن Ctrl+x بزنین و بعد دکمه y به معنی اطلاعات بیشتر

کمی درباره آپاچی و چند دستور کلیدی در آپاچی برای صاحبان سایت و سرور

مقدمه

آپاچی معروف ترین و اولین وب سرور دنیا بوده است که سالهای سال است روی اکثر پلت فرم های موجود کار میکند و  راندمان خوب بهتر از IIS و ضعیف تر از نسل های جدید مثل nginx  همیشه در بالاترین جایگاه قرار داره از نظر استفاده دارد.

در کارکرد آپاچی

آپاچی کارش وب سرور هستش درواقع یک توزیع کننده هستش، یعنی چی ؟ ببینید مساله رو با یه مثال تعریف می کنیم من میخوام وارد یه ارگان شم اطلاعات بگیرم ازش خب اون منطقه ورود ممنوع هستش و من نمیتونم با کارمندانش ارتباط داشته باشم ولی یه نفری اونجا وجود داره(نامه گردان) هر نامه ای بهش بدی از روی نامه وارد ارگان میشه و بخش مورد نظر شما رو پیدا می کنه و در انتها نامه رو به دست صاحبش میرسونه و اگر جواب داشت برای شما میاره. سرور شما حکم سازمان رو داره و آپاچی حکم اون نامه گردان رو داره.

این نامه گردان اصلا با متحوای نامه شما کار نداره.
آدم گیری هم هستش اشتباه آدرس بدی یا بد خط باشی خبری از جواب صحیح نیست
ولی خیلی دقیق هستش
کمی هم تنبل هستش

خب با این مثال تقریبا مشخص شد که آپاچی چی کار میکنه خب اجازه بدین فنی تر صحبت کنیم. آپاچی با توجه  به اطلاعات بیشتر

PhpDebugBar

maximebf/debugbar برای slimframework

اگر قصد داشتن یک نوار دیباگ کامل رو در برنامه نویسی Php داشته باشین maximebf/debugbar یکی از بهترین گزینه هاست.

اینجا نحوه نصب برای SlimFramework از طریق بسته کمکی kitchenu/Slim-DebugBar رو توضیح میدیم:

۱-بسته رو از طریق composer نصب میکنیم:

۲-به عنوان یک سرویس دهنده بسته رو ارایه میدیم به اسلیم:

۳- دیباگبار میتونه با پکیجهای دیگه مثله monolog و pdo هم ارتباط برقرار کنه و اطلاعات دیباگ این پکیج هارو در اختیارتون بزاره:

  • برای monolog  (فرض میکنیم monolog رو به عنوان یک نیازمندی به فریمورک اسلیم به نام logger معرفی کردیم) :

  • برای Pdo و نمایش اطلاعات ارتباط با دیتابیس:

  • برای نمایش اطلاعات Eloquent  هم میتونیم با به دست اوردن شی Pdo مربوطه اطلاعات دیتابیس رو بدست بیاریم(فرض میکنیمEloquent رو به عنوان یک نیازمندی به فریمورک اسلیم به نام db معرفی کردیم):

phpdebugbar

راهندازی یک وب سرور با استفاده از php, MySQL, apache و ftp

به نام دانای بر حق

 

مقدمه

 

قدرتمند ترین ،رایج ترین و به صرفه ترین وب سرور های دنیا تشکیل شده از مثلث جادویی php – mysql -apache هست، که هر سه open source  و cross plat-form هستند یعنی وابسته به سیستم عامل خاصی نیستند، اما از اونجایی که پیش از این در مباحث قبلی بحث کردیم centos قوی تری توزیع لینوکس برای راهنداری وب سرور می باشد حال ما در این یادداشت باهم یک سرور که شامل موارد زیر میشود را راهندازی خواهیم کرد:  بله شامله : )

 

php-mysql

  • Apache 2.2.15
  • MySQL 5.5.34
  • PHP 5.5.4
  • pure-ftpd finall

این  آموزش شامل centos 5.x و   centos 6.x  ورژن های 32 و 64 بیت میباشد

 

 

ماژول هایی که نصب خواهند شد:

اطلاعات بیشتر

آموزش نحوه نوشتن یک ربات bot برای Telegram

به نام دانای بر حق

مقدمه

با این که من خودم مخالف ۱۰۰٪ این تکنولوژی هایی هستم که هر روز زندگی بشر رو بیشتر به پوچی نزدیک می کنه ولی خب بد نیستش که از نظر فنی بیایم و به این موضوع نگاهی بندازیم همونجوری که میدونین تلگرام یه شبکه ای هستش شبیه وایبر منتهی با حذف یه سری محدودیت ها که وایبر داره محبوب تر شده و با داشتن ربات ها متمایز شده از سایر شبکات دیگر، ما در این آموزش در مورد نحوه راهندازی یک ربات صحبت می کنیم ما تک تک api ها رو معرفی نمیکنیم یک ربات  رو تعریف می کنیم  از ۰ تا ۱۰۰ اما تا حد زیادیش رو میگم بقیه با شما شاید هم یک آموزش تکمیلی در این مورد ارسال کردیم.

اگر شما به زبان جاواسکریپت تسلط بیشتری دارید پیشنهاد میکنم از این آموزش استفاده کنین.

پیش فرض ها

اول از همه شما باید به سیستم عامل خودتون تسلط داشته دارید ( من تو آموزش از لینوکس توزیع ubuntu استفاده می کنم و به شما هم همین os رو پیشنهاد می کنم.) .

دوم با زبان پایتون حداقل دست پا شکسته آشنایی داشته باشید.

سوم تسلط به یک زبان وب و نوشتن یک ربات برای پرسش و پاسخ ( ضروری نیست)

دانلود و نصب

ابتدا پایتون روی سیستمتون نصب کنین اگر لینوکسی هستید نصب شده است نگران نباشید البته نسخه 2.x نه 3

سپس python pip رو نصب کنید در اوبنتو با دستور زیر:

سپس کتابخانه telegram bot رو با Pip نصب کنید به شکل زیر:

سپس git را نصب کنید در Ubuntu به شکل زیر:

در نهایت میریم به پوشه مشخص مثل desktop بعد یه همزاد یا همون clone از ربات اطلاعات بیشتر

عجایب هفتگانه زبان php – در ساختار و کدنویسی

به نام دانای بر حق

اولین یادداشت ۹۴ رو میزنم به افتخار همه اساتید xmen که ما شاگردشون هستیم، می خوایم در مورد 7 مورد از عجایبی که در زبان php وجود داره صحبت کنیم که برای کسایی که با زبان های دیگه دارن کار می کنند شاید بسیار عجیب باشه.

مقدمه

البته که php علاوه بر عشق یه زبان تحت وب نیز هست ; ) ,  باید به این مورد توجه کرد که php خیلی راه دست هستش و با هیچ زبان دیگه ای نمی تونین مقایسه اش کنین حتی Python من خودم اگر بخوام یه برنامه رو جدا از پلت فرمش بنویسم ۱۰۰٪ پایتون رو انتخاب می کنم چون خیلی راه دست هست و هلو برو تو گلو ولی خوب PHP واقعا یه چیز دیگه است چون اصلا این بچه مظلومه و بلد نیست به کد نویسش سخت بگیره و اذیتش کنه D :  , حالا اینا رو بی خیال شیم بیایم کمی در مورد ساختار این زبان صحبت کنیم چرا که برخی از این عجایب به ساختار این زبان بستگی داره، خب php عزیز یه زبان برنامه نویسی نیست یه زبان اسکریپت نویسی تحت وب هستش هستش که در تقریبا اکثر سیستم عامل های معروف قابل اجراست، حالا این یعنی چی یعنی این که کد های PHP هرگز کامپایل نمیشوند مثل یه برنامه دلفی و فقط و فقط تفسیر میشود، تفاوتی اصلی از اونجا ناشی میشود که وقتی کدی کامپایل میشود اطلاعت نامی و و متنی آن تقریبا از بین میره و فقط آدرس کلاس ها و توابع در برنامه باقی میماند ، اما چون در PHP همچین کاری نمیشه همه چیز به قوت خود باقی هستش که شما لذت ببرید و بعضی جاها هم حرص بخورید که مجبورید اصل سورس کد رو تحویل مشتری عزیز بدین : )

عجب اول – تعریف متغییر و آرایه

چیزی که اول هر برنامه نویسی رو متعجب می کنه این هستش که php چرا تعریف متغییر ندارد!؟ واقعا چرا؟ چراشو نمیدونم ولی خیلی خوبه که نداره شما رو درگیر کد نویسی می کنه نه قواعد سخت گیرانه خودش برای راحتی خودش برنامه نویس رو ناراحت نمی کنه، و نکته بعدی این که از   Associative array هم پشتیبانی می کنه که این خیلی خوبه و اما توضیحات:

تعریف یه متغییر در php :

ببین ما فقط کافی نسبت بدی خودش نوعش هم مشخص می کنه : )

تعریف آرایه :

در خط اول ما به شرایط تعریف کردیم و در قسمت دوم با هر کلیدی دوست داشتیم آرایه رو تعریف کردیم بینیم که بعد از کلید ۰ و ۱ ما 99 استفاده کردیم و مشکل هم نیست

تعریف آرایه Associative (آرایه هایی که به جای عدد از حروف و اعداد به عنوان کلید استفاده می کند)

تازه یکیش هم دو بعدیه دیدی چقدر ساده اس بعد بگین php بده اَسپ ( asp ) خوبه : )

عجب دوم – شناخت زمان

در php یه عجب خیلی خفن وجود داره این که خیلی ساده هر زمانی رو بهش بگی میفهمه مثلا ازش بپرسی من کلاس اول کی املا رو صفر شدم و از بابام کتک خوردم بهت میگه باور کن ; )

میگی نه نگاه کن یه تابع داریم به نام strtotime یعنی تبدیل رشته به زمان باید قبل از این به یه چیزی توجه داشت اونم این که تو php از timestamp استفاده میشه یعنی زمان همیشه یه عدد بزرگ هستش که اون عدد برمیگرده تا شما باهاش کار کنید. این مثلا این شکلی هست1427614759 و تعداد ثانیه هایی که از این اولین لحظه1970/01/01 گذشته رو نشون میده پس ما این عدد رو مدام نیاز داریم حالا ببینم چطور اطلاعات بیشتر

مقدمه ای بر smarty قوی ترین template engine حال حاضر

به نام دانای بخشنده

Smarty چیست؟

Smarty رو اگر بخواهیم توضیح بدهیم چیه باید بگیم در معنا یعنی ناقلا و یا هوشمند، اما اسمارتی یک موتور قالب و پوسته برای برنامه های مبتنی بر PHP می باشد، نباید اشتباه کرد که smarty یک framework یا چهارچوب نرم افزاری نیست فقط یک موتور قالب با ویژگی های گسترده و جالب هستش و مهم ترین مولفه اون که برنامه نویس ها رو ترغیب می کنه که ازش استفاده کنند این هستش که باعث میشه که کد های منتظقی برنامه و php به طور 100% از html و css جدا باشند این که میگیم ۱۰۰٪ واقعیت هستش چون اساس این template engine بر این است.

 

ویژگی های Smarty چیست؟

  • اسمارتی ویژگی های زیادی داره که بشع ازش نام برد اما مهم ترین اشون رو تو پاراگراف قبلی ذکر کردیم عاملی برای جدا شدن کد های برنامه php و منظقی از کد های طراحی  html و css و js که باعث میشه بروزرسانی کد های برنامه ها ساده تر و کد ها خوانا تر باشه.
  • ویژگی های دیگری که بشه از این موتور نام برد قابلیت های کد نویسی در این موتور وجود دارد یعنی شما هم متغییر دارید هم شرط هم انواع اقسام حلقه ها رو مثل for , foreach و …
  • ویژگی بعدی قابلیت پیوست کردن یا به انگلیسی include کردن فایل های دیگر رو داره که خیلی تو روند سرعت کند نویسی و اجرا کمک میکنه
  • سرعت اجرایی این تملیت انجین بسیار بالا تر از کد های خوب و ساده ی برنامه نویسان عادی هستش.
  • یادگیری اون به نسبت خیلی ساده هستش و نیاز به آموزش کمی داره.
  • قابلیت قابل ذکر دیگه که وجود داره توابع خیلی خوب و مناسب این سیستم هستش که تابع های کاربردی و جالبی داره مثلا تابعی های زمانی، ریاضی و …
  • اما یکی از نکات جالبی که در توانایی های اسمارتی خیلی برجسته هستش قابلیت cash کردن به صورت سفارشی یا همون customize هستش که دست شما رو باز می کنه و درگیر این موضوع نمی شید.
  • یکی از ویژگی های دیگه قابلیت debug و بررسی سرعت اجرا کد به طور پیش فرض در smarty هستش که جالب توجه هستش برای کسانی که خیلی رو Optimize و بهینه بودن کد هاشون حساس هستند
  • و اما یکی ویژگی دیگه قابلیت کنترل خطای بهتر برای جلوگیری از نمایش خطا برای بازدیدکننده هستش.
  • و ویژگی دیگه ای هم وجود داره برای اطلاع از اون به پایگاه سایبریش مراجعه کنید

 

اما نگارش های Smarty

نگارش یا همون ورژن های اسمارتی مانند سایر برنامه ها اسمارتی هم نگارش ها اصلی و ریز نگارش داره یعنی نگارش اصلی تفاوت بسیار زیادی به قبلی داره و ریز نگارش ها تفاوت کمی نسبت به نسخ قبلی و بعدی خود دارد اما ورژن های اصلی این برنامه 2 و 3 هستند که تفاوت زیادی دارند نسخ ۲ در php های ۴ و ۵ کامل جوابگو هستند اما نسخ ۳ فقط در php 5.2 به بالا اطلاعات بیشتر

بررسی نصب بودن Soap در PHP و نحوه نصب آن روی سرور های لینوکس

به نام یگانه دانای هستی

یکی از روش ارتباط میان دو سرور استفاده از سرویس Soap هستش که معمولاً کمی بد قلق هستش و کسایی که برای اسکریپت های راتباط ما بین سرور کار انجام میدن به Soap میرسن یه دو تا فحش اساسی به سیستم بانکی و سیستم این روش میدن، به سیستم بانکیش رو که کار خوبی میکنند فحش میدن با اون نمیشه باهاش کنار اومد ولی با سوآپ میشه کنار بیای ابتدا برای کار با Soap باید چک کنید ببینید نصب شده یا خیر برای اینکار دو تا کار می تونید آنجام بدین اول اصولی تر این هستش که شما phpinfo() رو اجرا کنید و سرچ کنید ببینید سوآپ نصب هستش یا خیر و اگر نصب بود فعال هستش یا خیر؟ این راه مطمئن بودش ولی یک راه دیگه چک کردن این هستش که آیا کلاس های آن وجود دارند یا خیر :

 

خب حالا اگر نصب باشد که بهتر میتونید توی php.ini اون رو فعال کنید یعنی سرچ کنید کلمه Soap رو و خطوط آن رو uncomment کنید و بعد از ریست کردن سرور ازش استفاده کنید و اما اگر نصب نبودش به طریق زیر میتونید اون رو نصب کنید.

 

ابتدا یا ترمینال سرور رو باز کنید و یا از طریق SSH به سرور متصل بشید و در لینوکس های وابسته به red hat مثل centos از کد زیراطلاعات بیشتر