محمد نصیری
بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

ابزار های WAMP و XAMP | راهکاری برای توسعه دهندگان PHP

اگر شما قصد توسعه وب سایت با زبان PHP را داشته باشید، حتماً نام ابزار های WAMP و XAMP را شنیده اید. امروزه تقریبا هر نرم افزاری را که تصور کنید می توانید در قالب یک نرم افزار یا سرویس تحت وب در سیستم عامل اجرا کنید ، البته این مورد در نرم افزارهای باز متن یا Open Source بیشتر بصورت رایگان دیده می شود. نرم افزارهایی که معمولا بصورت Open Source و با زبان های PHP و امثال آنها نوشته می شوند بصورت ویژه برای سیستم عامل هایی مانند لینوکس نوشته می شوند و همین موضوع می تواند باعث شود کاربران سیستم عامل ویندوز کمتر به سراغ اینگونه نرم افزارهای رایگان بروند ، شاید سختی و دشواری که در استفاده از سرویس های لینوکسی وجود دارد مهمترین دلیل کمتر استفاده شدن این نرم افزارها باشد و یا اینکه ضعف سیستم عامل های مایکروسافت است که اجازه نمی دهند نرم افزارهای Open Source براحتی بر روی آنها اجرا شوند.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
زمپ چیست ؟ ومپ چیست ؟ XAMPP و WAMPP

مایکروسافت برای نرم افزارهایی که با زبان های برنامه نویسی خودش نوشته می شوند بستر با بهتر بگوییم زیرساختاری به نام IIS ارائه کرده است که این سرویس نمی تواند براحتی از سایر زبان های برنامه نویسی متن باز مثل PHP پشتیبانی کند.علاوه بر تمام اینها فرض کنید شما می خواهید یک سیستم مدیریت محتوای وب یا( CMS ( Content Management System را بر روی سیستم خود نصب و راه اندازی کنید ، اگر در سیستم عامل ویندوز باشید شما برای استفاده از این نرم افزار بایستی یک پایگاه داده را نصب و پیکربندی کنید که خود آن فرآیند زمانگیر و تقریبا دشواری می باشد.

از طرفی دیگر بایستی سرویس وب سرور IIS را نصب و پیکربندی کنید و همچنین موارد مورد نیاز برای زبان برنامه نویسی سیستم مدیریت محتوای وب را برای پشتیبانی آن در ویندوز را نیز بایستی نصب کنید ، از همه اینها گذشته در نهایت متوجه می شوید که چقدر از منابع سیستم عامل شما به این سرویس ها اختصاص پیدا کرده است و کارایی سیستم شما کاهش پیدا می کند. حال فرض کنید همین بسته نرم افزاری سیستم مدیریت محتوای وب با زبان PHP نوشته شده باشد و سیستم عامل ویندوز و به خصوص وب سرور IIS پشتیبانی درستی از آن نداشته باشد ، چه اتفاقی می افتد ؟

در این حالت شما نباید از ویندوز استفاده کنید ، شما بایستی در وهله اول یک سیستم عامل لینوکس نصب کنید ، بر روی آن وب سرور آپاچی را نصب و پیکربندی کنید ، سپس پایگاه داده MySQL را نصب و پیکربندی کنید و همینطور در ادامه پشتیبانی از زبان اسکریپت نویسی PHP را بایستی نصب و پیکربندی کنید و به همین ترتیب اگر به درستی تمام تنظیمات را انجام دهید متوجه می شوید که تازه کارتان با سیستم عامل نه چندان ساده لینوکس برای ادامه فعالیت شروع شده است و خدای نکرده اگر دچار مشکل شوید رفع اشکال آن چندان ساده نمی باشد. هر چند که همین بسته های نرم افزاری برای ویندوز هم ارائه شده اند و شما می توانید در ویندوز Apache سرور یا MySQL داشته باشید اما نصب و راه اندازی تک تک آنها بر روی سیستم عامل ویندوز چندان هم ساده نیست.

ابزار های WAMP و XAMP | راهکاری برای توسعه دهندگان PHP

WAMP چیست ؟

ومپ یا WAMP مخفف کلمات Windows ، Apache ، MySQL ، PHP و Perl می باشد و همانطور که از نامش پیداست یعنی بستری برای شما فراهم می کند که بتوانید به یکباره و بدون نیاز به انجام تنظیمات جانبی ، تمامی سرویس های ذکر شده را بر روی سیستم عامل ویندوز بصورت یکجا نصب و راه اندازی کنید در عین حال که رابط کاربری ساده ای در اختیار شما قرار می گیرد. استفاده از WAMP برای نصب ، تست ، برنامه نویسی و اجرا کردن نرم افزارهای تحت وب باز متن یا Open Source در سیستم عامل ویندوز برای برنامه نویسان PHP و Perl ای توصیه می شود که توانایی کار کردن با خود سیستم عامل لینوکس را ندارند.

در واقع این نرم افزار یک شبیه ساز وب سرور و تمامی مخلفات لینوکسی آن در ویندوز می باشد و شما تقریبا همه نرم افزارهایی که در قالب Web Application در زبان های برنامه نویسی PHP و Perl نوشته شده اند را می توانید در این محیط نصب و راه اندازی و تست و البته توسعه دهید. البته در برخی اوقات من در سازمان های ایران دیده ام که از همین نرم افزار در محیط کار واقعی نیز استفاده می شود و این چندان خوب نیست.

شما برای اینکه بتوانید یک سیستم مدیریت محتوای تحت وب در اینترنت داشته باشید و بخواهید بر روی آن تغییرات و برنامه نویسی انجام دهید نیازمند خرید یک فضای لینوکسی در اینترنت به نام Host یا هاست هستید ، در ادامه شما نیاز به استفاده از کنترل پنل مدیریت هاست خود دارید تا بتوانید تنظیمات مربوط به پایگاه داده MySQL این سیستم مدیریت محتوا را انجام دهید در اکثر موارد این کنترل پنل به نام Cpanel معروف است که در لینوکس راه اندازی می شود.

اگر قرار باشد شما با هر باز کد نویسی بخواهید کد مورد نظر خود را در این هاست کپی کنید و سپس به بررسی نتیجه بپردازید بسیار طولانی و طاقت فرسا می شود ، شما با استفاده از WAMP می توانید براحتی همه این تنظیمات را بصورت محلی بر روی سیستم خود نصب و اجرا کنید و به همین دلیل است که در بسیاری از اوقات به نصب WAMP در سیستم عامل و راه اندازی سیستم های مدیریت محتوا در آن Local Host یا هاست محلی نیز گفته می شود زیرا تمامی مواردی که شما در یک هاستینگ اینترنتی نیاز دارید را بصورت یکجا و با چند کلیک فراهم می کند. توجه کنید که WAMP بصورت یکجا تمامی مواردی که یک نرم افزار باز متن یا Open Source برای اجرا نیاز دارد ، اعم از سیستم عامل ، پایگاه داده ، زبان اسکریپت نویسی و فضای اجرایی را به یکباره در اختیار شما قرار می دهد.

ابزار های WAMP و XAMP | راهکاری برای توسعه دهندگان PHP

XAMPP چیست ؟

تمامی مواردی که ذکر کردیم در خصوص نرم افزار WAMPP در خصوص نرم افزار XAMPP که زمپ خوانده می شود نیز صادق است. این نرم افزار نیز همانند WAMP عمل می کند و برای شبیه سازی لوکال هاست بر روی سیستم عامل مورد استفاده قرار می گیرد. مشابه WAMP در XAMPP نیز ما سیستم عامل یا OS ، پایگاه داده یا Database ، زبان اسکریپت نویسی یا Scripting Language و فضای ذخیره سازی یا Host را در اختیار می گیرم و به همین شکل Apache و MySQL و Perl و PHP در هنگام نصب هر دو نرم افزار WAMP و XAMPP به سادگی و تنها کلیک کردن چند دکمه انجام می شود. توجه کنید که از این سری نرم افزارها در اینترنت ممکن است زیاد باشد اما بهترین های آنها از نظر بنده در وهله اول WAMP و در وهله دوم XAMPP و در نهایت نرم افزار مشابه دیگری به نام EasyPHP می باشد.

منظور از Local Host چیست ؟

تا اینجا به شما مفهوم لوکال هاست را به سادگی توضیح دادیم اما الان می خواهیم بصورت مفصل به بررسی این مفهوم بپردازیم ، ابتدا مفهوم هاست و هاستینگ را بررسی می کنیم ، منظور از هاست یا Host فضایی از هارد دیسکی است که بصورت مدیریت شده در اختیار شما قرار می گیرد که از طریق اینترنت قابل دسترس می باشد ، این فضا رایگان نیست و شما بایستی در وهله های زمانی معین برای آن هزینه کنید. تمامی وب سایت هایی که طراحان وب طراحی می کنند و در اختیار شما قرار می دهند در نهایت بایستی در اینترنت قرار بگیرند و بدون استثناء همه آنها نیازمند فضایی به نام هاست یا میزبان برای ارائه سرویس خود هستند. به شرکت یا سرویس دهنده ای که خدمات هاست را به ما ارائه می دهد در اصطلاح هاستنیگ سرویس یا Hosting Service گفته می شود.

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

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

قابلیت های WAMP و XAMP

در ابتدا توجه کنید که WAMPP و XAMP بصورت ویژه برای نرم افزارهای کاربردی تحت وب طراحی و ایجاد شده اند و نه نرم افزارهای سیستم عاملی که بر روی سیستم عامل استفاده می شوند. بنابراین سرویس گیرنده های این نرم افزارها افرادی هستند که از اینترنت یا وب استفاده می کنند. نرم افزارهای بسیاری در اینترنت وجود دارد که بصورت رایگان در اختیار کاربران قرار می گیرد و هیچگونه هزینه ای بابت دانلود و استفاده از این نرم افزارها از شما دریافت نمی شود.

این نرم افزارها معمولا با استفاده از زبان های برنامه نویسی مانند PHP و Perl نوشته می شوند و سورس یا محتویات کد آنها در اختیار همگان قرار دارد تا بتوانند بر حسب نیاز آنها را تغییر دهند. شما می توانید کلیه نرم افزارهایی که بصورت باز متن و بر اساس برنامه نویسی پویا یا داینامیک نوشته شده اند و در اینترنت براحتی قابل دانلود هستند را در WAMP و XAMP بدون هیچ مشکل قانونی نصب و استفاده کنید.این نرم افزارها می توانند انواع و اقسام سرویس های اینترنتی را به کاربران بصورت رایگان قرار بدهند و شما می توانید براحتی از WAMP و XAMP برای یادگیری و توسعه آنها استفاده کنید ، سیستم های مدیریت محتوای وبی مانند Joomla و WordPress و Drupal و ... از جمله مواردی هستند که براحتی می توانید شما برای راه اندازی وب سایت های اینترنی بصورت رایگان استفاده کنید و برای خود آنها را دلخواه سازی کنید .

اما فقط همین نرم افزارها نیستند ، هر چیزی که در اینترنت فکرش را بکنید را می توانید در قالب این نرم افزارهای Open Source مشاهده کنید ، شاید دوست داشته باشید وب سایتی شبیه فیسبوک برای خود راه اندازی کنید ! نیازی به دانستن دانش برنامه نویسی نیست ، کافیست نرم افزار Social Engine یا چیزی شبیه به آنرا که برای ساختن شبکه های اجتماعی اینترنتی بصورت رایگان در اینترنت قرار گرفته اند را دانلود و برای خود نصب کنید و فیسبوک خود را ایجاد کنید.

این نرم افزارها در قالب اسکریپت های آماده قابل نصب در اختیار شما قرار می گیرد و به دلیل استفاده از MySQL و Apache و ... بهترین گزینه برای استفاده در XAMP و WAMP هستند. کافیست یکی از آنها را دانلود کنید که معمولا در قالب فایل های فشرده قرار دارند و در پوشه WWW ای که نرم افزارهای WAMP و XAMP بعد از نصب در اختیار شما قرار می دهند قرار بدهید و آنها را از حالت فشرده در بیاورید و از طریق وب فایل اجرایی نصب نرم افزار را اجرا کنید ، واقعا به همین سادگی است.

همین وب سایت توسینسو سالها پیش از همین نرم افزارهای رایگان قدرت می گرفت ، چندین سال با استفاده از نرم افزار Joomla که فارسی سازی نیز شده بود در اینترنت به نام انجمن حرفه ای های فناوری اطلاعات ایران فعالیت داشتیم که یک سیستم مدیریت محتوا بود ، بعد از سالها از نرم افزار MyBB برای راه اندازی تالار گفتمان استفاده کردیم و به همین صورت تکامل یافتیم تا به شکل امروزی در آمدیم ، امیدوارم مطلب مورد توجه شما قرار گرفته باشد ، در مقاله بعدی در خصوص روش نصب و را اندازی یکی از همین نرم افزار های متن باز رایگان بر روی WAMP در خدمت شما دوستان خواهیم بود.


محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

محمد نصیری هستم ، هکر قانونمند و کارشناس امنیت سایبری ، سابقه همکاری با بیش از 50 سازمان دولتی ، خصوصی ، نظامی و انتظامی در قالب مشاور ، مدرس و مدیر پروژه ، مدرس دوره های تخصص شبکه ، امنیت ، هک و نفوذ ، در حال حاضر در ایران دیگه رسما فعالیتی غیر از مشاوره انجام نمیدم و مقیم کشور ترکیه هستم ، عاشق آموزش و تدریس هستم و به همین دلیل دوره های آموزشی که ضبط می کنم در دنیا بی نظیر هستند.

نظرات