زمانی که شما از طریق کامپیوتر خود به یک آیپی آدرس متصل میشوید، در حقیقت در حال تماس با یک کامپیوتر دیگر از طریق اینترنت هستید. همهی ما میدانیم که آیپیها نقش مهمی در اتصالات و ارتباطات مجازی ایفا میکنند؛ اما، اگر با آیپی آدرس 127.0.0.1 ارتباط برقرار کنید، در حال تماس با با localhost هستید. در حقیقت این localhost کامپیوتر شخصی شما است؛ اما، چرا باید یک ارتباط مجازی با خود ایجاد کنید و اصلا انجام این کار چه فایدهای دارد؟ در ادامه به این سؤال و سؤالات مشابه پاسخ خواهیم داد.
مفهوم لوکال هاست
IP مخفف عبارت Internet Protocol است و هر دامنهای در اینترنت یک آیپی مشخص دارد. زمانی که شما با یک کامپیوتر دیگر از طریق اینترنت ارتباط میگیرید، این ارتباط در اصل از طریق آیپی آدرسها صورت میگیرد.
localhost نیز مانند هر دامنهای دارای یک آیپی است. این آدرس از 127.0.0.0 تا 127.225.225.225 متغیر است؛ اما، اغلب در حالت نرمال این آدرس برای localhost 127.0.0.1 خواهد بود. هنگامی که شما از طریق کامپیوتر خود با این آیپی اتصال برقرار کنید، در حال ارتباط با localhost خواهید بود و localhost چیزی جز همان کامپیوتر شخصی شما نیست.
در سادهترین تعریف این عبارت میتوان گفت که localhost همیشه کامپیوتر شخصی شماست. همان طور که گفته شد لوکال هاست دارای یک آیپی است؛ اما، این آیپی در شبکهی داخلی با آیپی آدرسی که در اینترنت برای localhost تعریف میشود، متفاوت خواهد بود. این آیپی در اینترنت توسط ISP یا همان فراهم کنندهی سرویس اینترنت (Internet service provider) تعیین میشود و localhost در این سرویس بهعنوان یک سرور شناسایی میشود که روی کامپیوتر شما قرار دارد.
لوکال هاست صرفا نامی برای سرور مجازی نیست، بلکه نامی برای یک دامنه نیز محسوب میشود. بهعنوان مثال .example, .test, و .invalid, نمونههایی برای نام دامنه هستند. localhost یک دامنه است که برای اهدافی نظیر ثبت اسناد یا تستینگ از آن استفاده کمک میگیرند.
کاربرد لوکال هاست
توسعهدهندگان وب از لوکال هاست برای تست اپلیکیشنها و برنامههای وب استفاده میکنند و این مهمترین کاربرد لوکال هاست است. ادمینهای شبکه از loopback برای تست اتصالات شبکه کمک میگیرند. دیگر کاربر localhost میزبانی از فایلها است.
تست برنامه
وبسرورها عموما از localhost برای برنامهنویسی اپلیکیشنهایی که نیاز به برقراری ارتباط از طریق اینترنت دارند، استفاده میکنند. در طول فرایند توسعه، این موضوع بسیار مهم است که بدانیم اپلیکیشن در صورت دسترسی به اینترنت بهشکل صحیح کار میکند یا خیر و به همین دلیل اپلیکیشنها از طریق localhost آزمایش میشوند.
دیگر کاربرد لوکال هاست زمانی است که یک فایل مشخص در اینترنت وجود داشته باشد. در مباحث برنامهنویسی و شبکه این نکته کاملا بدیهی است که بین کد HTML که فایلها را در کامپیوتر شخصی باز میکند و کدی که از طریق سرور به ما امکان دسترسی به آن را میدهد، تفاوت وجود دارد. انتشار یک اپلیکیشن بدون تست آن هرگز اتفاق نمیافتد و توسعهدهندگان با استفاده از همین ویژگی و با کمک لوپبک میتوانند محصول را تست کنند. به این ترتیب آنها یک کانکشن را شبیهسازی میکنند و در عین حال با اِرورهای شبکه نیز برخورد نمیکنند.
مزیت دیگر کاربرد لوکال هاست برای تست سرعت اپلیکیشن یا سایت است. معمولا بیش از صد میلیثانیه زمان میبرد تا شما یک درخواست را از طریق اینترنت ارسال کنید. برای انتقال اطلاعات از طریق localhost و ارسال پینگ به آن حداکثر یک میلی ثانیه زمان لازم است.
بلاک کردن وبسایتها
یک کاربرد لوکال هاست ، فیلتر کردن سایتها روی کامپیوترهاست. این ویژگی بیشتر بهدرد والدینی میخورد که نمیخواهند فرزندانشان به هر نوع سایتی دسترسی داشته باشند؛ اما، localhost چگونه این کار را انجام میدهد؟ قبل از هر چیز بد نیست بدانید که در کامپیوتر شما فایلی بهنام hosts وجود دارد که عملکردی شبیه دفترچهی تلفن دارد. زمانیکه میخواهید وارد وبسایتی شوید، مرورگر سیستم ابتدا این فایل را بررسی میکند تا ببیند آیا آدرس آیپی وبسایت داخل آن قرار دارد یا خیر. درصورتیکه آدرس وبسایت داخل فایل hosts باشد، با کمک این آیپی وبسایت مدنظر را در اینترنت پیدا کرده و برای شما باز میکند؛ در غیر اینصورت مرورگر از DNSها کمک میگیرد. اگر بخواهید سایتی روی سیستم شما باز نشود، بهسادگی میتوانید آدرس آیپی آن را بهصورت تغییر یافته در این فایل جایگذاری کنید؛ مثلا، آدرس خود سیستم، یعنی 127.0.0.1، را برای آن بنویسید. این نکته را نیز در نظر داشته باشید که بهتر است آدرس آیپی سایتهای دیگر را برای یک وبسایت خاص قرار ندهید؛ چون معمولا این فایل توسط خود ویندوز و آنتیویروسها بررسی میشود.
کنترل صحیح سیستم
کنترل عملکرد سیستم دیگر کاربرد لوکال هاست است. شما میتوانید از localhost برای یافتن خطا و کنترل عملکرد مرورگر و کارت شبکهی خود استفاده کنید. به این موضوع زمانی نیاز پیدا میکنید که اتصال به اینترنت در سیستم شما با مشکل مواجه شود. برای این کنترل لازم است در ابتدا پینگ لوکال سرور را چک کنید. در صورتی که پینگ صفر بود یا عدد زیادی را نشان میداد، مطمئنا ایرادی در سیستم شما وجود دارد. در این هنگام باید تنظیمات شبکه را در سیستم خود چک کنید یا آن را ریست کنید. لازم به ذکر است عدم فعال بودن localhost روی سیستم شما نیز میتواند باعث اعلام قطع ارتباط شود.
آیا لوکال هاست همان هاست است؟
لوکال هاست با هاست تفاوتهای زیادی دارد؛ اما، میتواند بخشی از کارکردهای هاست را با هزینهی کمتر در دسترس شما قرار دهد. برخی از زبانهای برنامهنویسی برای اجرا شدن روی سیستم به یک هاست احتیاج دارند تا از این طریق بتوانید به برنامههای موردنیاز خود دسترسی داشته باشید. همچنین هاست محلی یا localhost موجب میشود برای استفاده از این زبانها با اِرور برخورد نکنید.
این هاست محلی بیشتر زمانی کاربرد دارد که قصد دارید یک سایت ایجاد کنید. به این ترتیب با تست مرحلهبهمرحله سایت خود میتوانید برای ایجاد یک سایت حرفهای اقدام کنید. البته برای داشتن localhost نیاز به نصب برنامههایی روی کامپیوتر خود نیز خواهید داشت.
لوکال هاست با هاست چه تفاوتی دارد؟
localhost و هاست تفاوتهایی با یکدیگر دارند که میتوانید بر اساس شرایط و نوع نیاز خود یکی از آنها را انتخاب کنید. هر کدام از این دو دارای مزایا و معایبی نیز هستند. همان طور که پیشتر گفته شد هاست محلی روی کامپیوتر شخصی شما قرار دارد و به آن دسترسی کامل خواهید داشت؛ این در حالی است که به هاست مجازی بروی سیستم خود دسترسی ندارید و در فضای وب قرار گرفته است.
برای استفاده از هاست شما باید هزینهی زیادی را پرداخت کنید؛ در صورتی که برای localhost نیازی به پرداخت هزینه وجود ندارد. یکی از مهمترین تفاوتهای لوکال هاست با هاست معمولی این است که هنگام نصب وردپرس یا سایر CMSها روی localhost خود، تنها شما میتوانید به سایتی که ایجاد کردهاید از طریق آیپی 127.0.0.1 دسترسی داشته باشید. به بیان دیگر سایت وردپرسی یا هر نوع سایت دیگری که روی localhost است، فقط برای شما قابل مشاهده است. این موضوع فرصت مناسبی برای شما ایجاد میکند تا بتوانید به عیبیابی و تست وبسایت خود بپردازید.
استفاده از لوکال هاست به جای هاست چه مزایایی دارد؟
استفاده از localhost امتیازات زیادی برای شما خواهد داشت، مثلا:
- یکی از مهمترین مزایای لوکال هاست عدم نیاز به اینترنت است و شما بدون اتصال به اینترنت در هر زمان و هر مکان میتوانید کدهای خود را اجرا کنید.
- هاست محلی سرعت زیادی دارد؛ چون، انتقال فایلها به سرور در این حالت با سرعت بسیار بیشتری انجام میشود. از سوی دیگر، سرعت انتقال در هاست بر اساس حجم فایلهای انتقالی متفاوت خواهد بود؛ اما، در localhost چنین مشکلی وجود ندارد و سرعت زیادی را هنگام انتقال فایلهای خود در هر حجمی تجربه خواهید کرد.
- localhost کاملا رایگان است و شما بدون نیاز به پرداخت هیچ هزینهای و تنها با نصب یک سری برنامههای خاص میتوانید آن را روی کامپیوتر خود ایجاد کنید.
- برای ایجاد و استفاده از هاست محلی هیچ تفاوتی بین سیستمعاملهای متفاوت وجود ندارد. به بیان دیگر چه از ویندوز یا مک استفاده کنید و چه از لینوکس، در هر حال میتوانید localhost را بهراحتی روی سیستم خود فعال کنید.
- با استفاده از localhost شما میتوانید بهسادگی و با سرعت زیادی فایلهای خود را مدیریت کنید.
- این هاست به شما کمک میکند تا از طریق پوشههایی ساده و در دسترس، فایلهای خود را سازماندهی کنید.
- عدم دسترسی به نسخهی دمو و تست نشده کار شما در اینترنت، سبب میشود امنیت فایلهای شما در عین دسترسی آسان تأمین شود.(این جمله مبهمم است)
- در مجموع تمام مواردی که بهعنوان مزایای هاست محلی بر شمردیم میتوانند به افزایش سرعت عملکرد شما بینجامند؛ بنابراین، بازدهی شما از این طریق بیشتر خواهد شد.
استفاده از لوکال هاست به جای هاست چه معایبی دارد؟
استفاده از localhost نواقص و محدودیتهایی نیز به دنبال دارد؛ بهعنوان مثال:
- عدم امکان تست خدمات اینترنتی: بهعنوان مثال برای تست درگاه پرداخت اینترنتی وبسایتی که ایجاد کردهاید نیاز به اینترنت خواهید داشت که با استفاده از هاست محلی انجام این تست غیر ممکن است.
- عدم دسترسی به سرویسهای اینترنتی: هاستها دارای دسترسی به سرویسهای اینترنتی مثل ایمیل و پایگاه دادهای منظم هستند که با استفاده از localhost این امتیاز از شما سلب شده وامکان طراحی یا اتصال به سرویس ایمیلی برای شما وجود نخواهد داشت.
انواع لوکال هاست
انواع لوکال هاست بر اساس نوع وب سرور به دو دستهی آپاچی و nginx تقسیم میشوند. این دو وب سرور هر کدام خصوصیاتی مختص به خود دارند و کاربردشان با هم فرق میکند. تفاوتهای اصلی این دو نوع وبسرور در معماری، عملکرد، سیستمعامل، پیکربندی و ماژولهایشان هستند. در ادامه به بررسی انواع لوکال هاست بر اساس وب سرور میپردازیم:
- وب سرور آپاچی: این وب سرور منبع باز و رایگان است که در 46 درصد سایتهای دنیا استفاده میشود و میتواند بسیاری از زبانها را درک کند. این وب سرور بیشتر در لینوکس اجرا میشود. از معروفترین نرمافزارهای ساخت localhost با وبسرور آپاچی میتوان به XAMPP، WAMP، MAMP و AMPP اشاره کرد.
- وب سرور nginx: دستهای از انواع لوکال هاست، از وب سرور nginx استفاده میکنند. این وب سرور طیف وسیعی از وظایف سرورها را انجام میدهد و برای رفع مشکل ساپورتِ همزمان تعداد بیش از 1000 کلاینت طراحی شد. از نرمافزارهای localhost این وب سرور میتوان به LEMP، MAMP و WPN-XM اشاره کرد.
نرمافزارهای برتر شبیهسازی لوکال هاست
WAMP, XAMPP, MAMP و LAMP از مهمترین نرمافزارهای شبیهساز لوکال هاست هستند. اصلیترین تفاوتی که بین این نرمافزارها وجود دارد، سیستمعاملی است که از آنها پشتیبانی میکند.
- نرمافزار XAMPP برای تمام سیستمعاملها طراحی شده است؛ یعنی، از ویندوز، لینوکس و مک پشتیبانی میکند. امکان استفاده از زبانهای برنامهنویسی PHP و Perl نیز در آن وجود دارد.
- نرمافزار WAMP نیز برای ویندوز قابل استفاده است و علاوه بر زبان PHP از Perl نیز پشتیبانی میکند.
- LAMP برای سیستمعامل لینوکس طراحی شده و زبان پایتون نیز علاوه بر PHP بر روی آن قابل استفاده است.
- نرمافزار MAMP هم از ویندوز و هم از مک پشتیبانی میکند. در این نرمافزار فقط امکان استفاده از زبان برنامهنویسی PHP وجود.
راه اندازی لوکال هاست
راه اندازی لوکال هاست در انواع برنامههای نام برده شده، تقریبا مشابه یکدیگر است. در این آموزش ما نحوهی راه اندازی لوکال هاست xampp را بهصورت مرحلهبهمرحله آموزش میدهیم.
مرحلهی اول: برنامهی xampp را دانلود کنید. برای اینکار بهتر است آخرین نسخهی برنامه را از سایت اصلی آن بگیرید.
مرحلهی دوم: برای نصب درست تمامی مؤلفههای برنامه، باید حتما آنتیویروس سیستم را غیرفعال کنید.
مرحلهی سوم: UAC یا همان User Account Control ویندوز را نیز غیرفعال کنید؛ چون، این فایل اجازهی نوشتن فایل در درایو c را محدود میکند.
مرحلهی چهارم: برنامهای که دانلود کردهاید را نصب کنید. نصب برنامه از طریق اجرای فایل .exe داخل پوشهی دانلود انجام میشود. با دوبار کلیک روی این فایل پنجرهی زیر برای شما باز میشود که باید روی دکمهی next کلیک کنید.
مرحلهی ششم: در پنجرهی باز شده، در قسمت Select Components انواع سرورها و زبانها وجود دارد که باید بر اساس نیازتان گزینههای مناسب را انتخاب کنید. بهتر است در این قسمت همهی گزینهها را در حالت انتخاب نگه دارید.
مرحلهی هفتم: مسیر نصب را مشخص کنید. معمولا مسیر استاندارد همان مسیر پیشفرض تعیین شده روی برنامه است.
مرحلهی هشتم: در این قسمت نصب برنامه شروع میشود و نیازی نیست که شما کاری انجام دهید. این کار ممکن است کمی طول بکشد.
مرحلهی نهم: زمانیکه برنامه نصب شد، صفحهی زیر نمایش داده میشود که باید با زدن روی دکمهی finish نصب برنامه را کامل کنید.
حال آیکن برنامه را روی دسکتاپ یا نوار استارت پیدا کرده و روی آن کلیک کنید تا برنامه localhost راه اندازی شود.
نحوه اتصال و کار با localhost
برای اینکه به localhost متصل شوید، باید هر بار برنامه را اجرا کرده و روی دکمهی اتصال به ماژول مدنظر کلیک کنید. زمانیکه برنامه را باز میکنید، با چنین پنجرهای روبهرو میشوید:
در قسمت راست برنامه هفت دکمه وجود دارد، شامل:
- Config: تنظیمات مربوط به تکتک کامپوننتها را میتوانید در این قسمت تغییر دهید.
- Netstat: تمامی پروسههای در حال اجرا روی کامپیوتر محلی را نشان میدهد.
- Shell: پوستهی یونیکس را اجرا میکند.
- Explorer: پوشهی xampp را در کامپیوتر باز میکند.
- Services: تمامی سرویسهای در حال اجرا در بکگراند را نشان میدهد.
- Help: لینک راهنمایی را باز میکند.
- Quit: از برنامه خارج میشود.
برای اتصال به localhost باید مراحل زیر را انجام دهید:
- مرحلهی اول: روی دکمهی استارت در مقابل دو ماژول Apache و MySQL کلیک کنید. بعد از چند ثانیه این دو ماژول به رنگ سبز درمیآید.
- مرحلهی دوم: با تایپ آدرس http://localhost در مرورگر، وارد localhost خود در xammp شوید.
- مرحلهی سوم: در این قسمت باید دیتابیس خود را بسازید. برای اینکار روی phpMyAdmin در قسمت بالای سمت راست صفحه کلیک کنید.
- مرحلهی چهارم: در پنجرهی مدیریت پایگاه داده باز شده باید نام و زبان دیتابیس را مشخص کنید و با زدن دکمهی ایجاد، آن را بسازید.
اکنون localhost شما آماده شده و میتوانید فایلهای مربوط به سایتتان را در پوشهی xampp ذخیره و استفاده کنید.
سخن پایانی
localhost یکی از مهمترین مباحثی است که در شبکه و برنامهنویسی و تست سایتهای طراحی شده و برخی نرمافزارها کاربرد دارد. استفاده از localhost نسبت به هاست مزایای فراوانی دارد که امنیت و سرعت زیاد و هزینهی کم برای دسترسی به آن از این جمله هستند. استفاده از هاست محلی از طریق نرمافزارهایی که به همین منظور طراحی شدهاند و نصب پکیجهای این نرمافزارها امکان پذیر است. در این مطلب سعی شد اطلاعاتی در زمینهی localhost ، مقایسهی آن با هاست و مهمترین نرمافزارهای آن در اختیار شما قرار داده شود تا از این طریق بتوانید با هزینهای کمتر و سرعت بیشتر از مزایای در اختیار داشتن یک هاست برخوردار شوید.
منبع