رفتن به محتوای اصلی
میزبانی وب

لوکال هاست چیست؟ کاربردها و راه‌اندازی

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

لوکال هاست چیست؟ کاربردها و راه‌اندازی

لوکال هاست یا localhost نام ویژه‌ای است که به دستگاهی اشاره می‌کند که درخواست از داخل آن ارسال شده است. برای مثال، وقتی روی لپ‌تاپ خود به localhost متصل می‌شوید، مقصد همان لپ‌تاپ است؛ نه یک سرور دیگر در اینترنت.

در گفت‌وگوهای مربوط به طراحی سایت، «لوکال هاست» معمولاً معنای گسترده‌تری دارد: محیطی روی کامپیوتر شخصی که وب‌سایت را برای توسعه و آزمایش اجرا می‌کند. بااین‌حال، بهتر است این دو مفهوم را جدا کنیم:

  • localhost: نامی برای ارتباط شبکه‌ای با دستگاه خودتان.
  • محیط توسعه محلی: مجموعه نرم‌افزارهایی مانند وب‌سرور، محیط اجرای زبان برنامه‌نویسی و در صورت نیاز پایگاه داده.

بنابراین، localhost نرم‌افزاری نیست که آن را نصب کنید. آنچه نصب و اجرا می‌کنید، ابزارهای لازم برای پروژه است. این ابزارها نیز صرفاً نقش سرور را تقلید نمی‌کنند؛ یک وب‌سرور واقعی می‌تواند روی کامپیوتر شما اجرا شود، حتی اگر برای استفاده عمومی پیکربندی نشده باشد.

ویژه‌بودن نام localhost و ارتباط آن با آدرس‌های بازگشت به خود دستگاه، در استاندارد نام‌های دامنه با کاربرد ویژه تعریف شده است.

آدرس localhost چگونه کار می‌کند؟

ارتباط با دستگاه خود از مسیر لوپ‌بک یا Loopback انجام می‌شود؛ مسیری در سازوکار شبکه سیستم‌عامل که ترافیک را به همان دستگاه برمی‌گرداند. این ارتباط برای رسیدن به مقصد به عبور از روتر یا اینترنت نیاز ندارد.

آدرس‌های شناخته‌شده لوپ‌بک عبارت‌اند از:

نام یا آدرسکاربرد
localhostنام ویژه برای اشاره به دستگاه خود
127.0.0.1آدرس رایج لوپ‌بک در IPv4
::1آدرس لوپ‌بک در IPv6


لوکال هاست چیست؟ کاربردها و راه‌اندازی

نکته مهم این است که داشتن آدرس localhost به معنی فعال‌بودن یک وب‌سایت نیست. باید برنامه‌ای اجرا شده باشد که درخواست را دریافت کند و پاسخ بدهد.

نقش پورت در آدرس لوکال هاست

پورت یا درگاه، مشخص می‌کند درخواست به کدام سرویس روی دستگاه برسد. برای نمونه، در آدرس http://localhost:8000:

  • http پروتکل ارتباط است.
  • localhost دستگاه مقصد را مشخص می‌کند.
  • 8000 پورت سرویس است.

اگر وب‌سرور روی پورت 8000 اجرا شده باشد، بازکردن http://localhost لزوماً همان سایت را نمایش نمی‌دهد؛ چون مرورگر برای HTTP بدون پورت صریح، به‌طور پیش‌فرض از پورت 80 استفاده می‌کند.

همچنین localhost و 127.0.0.1 همیشه در عمل نتیجه یکسانی ندارند. ممکن است localhost به آدرس IPv6 تبدیل شود، اما برنامه فقط روی IPv4 اتصال بپذیرد. در این وضعیت باید آدرس و تنظیمات سرویس را با یکدیگر هماهنگ کنید.

کاربردهای لوکال هاست در توسعه و مدیریت سایت

طراحی و آزمایش سایت پیش از انتشار

می‌توانید ظاهر صفحات، فرم‌ها، مسیرهای برنامه و خطاهای کد را روی سیستم خود بررسی کنید؛ بدون اینکه نسخه نیمه‌کاره در دسترس بازدیدکنندگان قرار بگیرد.

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

بررسی تغییرات وردپرس، قالب و افزونه‌ها

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

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

یادگیری برنامه‌نویسی و مدیریت سرویس‌ها

محیط محلی برای یادگیری HTML، CSS، JavaScript، برنامه‌نویسی سمت سرور و کار با پایگاه داده مناسب است. می‌توانید تغییرات را سریع‌تر مشاهده کنید و برای هر تمرین، سرویس میزبانی جداگانه نخرید.

نوع ابزار به پروژه بستگی دارد: یک صفحه HTML ساده با برنامه‌ای که به PHP و پایگاه داده نیاز دارد، پیش‌نیازهای یکسانی ندارد.

بررسی سرویس‌ها و ارتباط بین اجزای برنامه

ممکن است رابط کاربری، API و پایگاه داده همگی روی یک دستگاه اجرا شوند. localhost امکان ارتباط محلی میان این اجزا را فراهم می‌کند.

مدیر سرور نیز می‌تواند پاسخ یک سرویس را از داخل همان سرور بررسی کند. البته موفق‌بودن این بررسی، دسترسی کاربران از بیرون سرور را ثابت نمی‌کند؛ تنظیمات فایروال، مسیر شبکه و آدرس اتصال همچنان اهمیت دارند.

تمرین بازیابی نسخه پشتیبان

بازگردانی بکاپ در محیط محلی کمک می‌کند مطمئن شوید فایل‌ها و پایگاه داده قابل بازیابی‌اند. اما نسخه‌ای که روی همان دیسک کامپیوتر نگه می‌دارید، به‌تنهایی راهکار پشتیبان‌گیری مطمئنی نیست.

تفاوت لوکال هاست با هاست اینترنتی چیست؟

مقایسه رایج «لوکال هاست و هاست» در واقع مقایسه محیط اجرای محلی با سرویس میزبانی اینترنتی است؛ نه مقایسه دو فناوری کاملاً جدا.

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


لوکال هاست چیست؟ کاربردها و راه‌اندازی

مزیت‌ها را با محدودیت‌ها اشتباه نگیریم

محیط محلی می‌تواند هزینه شروع کار را کاهش دهد و ویرایش فایل‌ها را ساده‌تر کند، اما چند محدودیت دارد:

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

برای تغییرات مهم، پس از آزمایش محلی از محیط پیش‌انتشار یا Staging نیز استفاده کنید؛ محیطی جدا از سایت اصلی که تنظیمات آن تا حد امکان به محیط عملیاتی نزدیک است.

چگونه یک سایت را روی لوکال هاست اجرا کنیم؟

ابتدا مشخص کنید پروژه به چه اجزایی نیاز دارد:

  • فایل‌های HTML، CSS و JavaScript: برای نمایش اولیه، یک وب‌سرور ساده کافی است.
  • پروژه PHP یا وردپرس: به PHP، وب‌سرور و در صورت نیاز پایگاه داده احتیاج دارید. بسته‌ای مانند XAMPP نصب این اجزا را ساده‌تر می‌کند.
  • پروژه مبتنی بر یک چارچوب نرم‌افزاری: از دستور راه‌اندازی و محیط اجرای همان پروژه استفاده کنید.

وب‌سرور مسئول دریافت و پاسخ‌دادن به درخواست‌های وب است؛ مفسر یا محیط اجرای زبان، کد برنامه را اجرا می‌کند. این دو نقش یکسان نیستند، هرچند بعضی ابزارها آن‌ها را در یک بسته ارائه می‌کنند.

نمونه ساده: نمایش یک صفحه محلی با Python

پیش‌نیاز: نصب Python 3 به‌روز و پشتیبانی‌شده در Windows، macOS یا Linux. این مثال برای فایل‌های ایستا است و PHP یا وردپرس را اجرا نمی‌کند.

گام اول: یک پوشه آزمایشی بسازید.

پوشه نباید حاوی رمز عبور، بکاپ یا فایل شخصی باشد؛ وب‌سرور می‌تواند فایل‌های داخل آن را در دسترس درخواست‌کننده قرار دهد.

گام دوم: فایل index.html را در آن ذخیره کنید.

<!doctype html>
<html lang="fa" dir="rtl">
<head>
  <meta charset="utf-8">
  <title>صفحه آزمایشی</title>
</head>
<body>
  <h1>این صفحه روی دستگاه من اجرا می‌شود.</h1>
</body>
</html>


گام سوم: ترمینال را داخل همان پوشه باز کنید و وب‌سرور را اجرا کنید.

در macOS و Linux، در صورت در دسترس بودن فرمان python3:

python3 -m http.server 8000 --bind 127.0.0.1

در Windows، اگر Python Launcher نصب است:

py -3 -m http.server 8000 --bind 127.0.0.1

اگر Python در سیستم شما با فرمان دیگری اجرا می‌شود، نام فرمان را متناسب با نصب خود تغییر دهید.

گام چهارم: آدرس http://127.0.0.1:8000 را در مرورگر باز کنید.

تا زمانی که فرایند فعال باشد، صفحه در دسترس است. برای توقف، در همان ترمینال Ctrl+C را بزنید.

گزینه --bind 127.0.0.1 باعث می‌شود این وب‌سرور فقط روی آدرس لوپ‌بک IPv4 اتصال بپذیرد. این ابزار برای تمرین و آزمایش ساده است، نه انتشار سایت عملیاتی؛ جزئیات فرمان و محدودیت امنیتی آن در مستندات وب‌سرور Python آمده است.

برای PHP و وردپرس از کجا شروع کنیم؟

در XAMPP، سرویس Apache را راه‌اندازی می‌کنید و فایل‌های پروژه را در پوشه وب قرار می‌دهید. در نصب پیش‌فرض ویندوز، این پوشه معمولاً C:\xampp\htdocs است. برای پروژه‌های وابسته به پایگاه داده، سرویس پایگاه داده نیز باید فعال باشد.

برای نمونه، فایل C:\xampp\htdocs\demo\index.php با تنظیمات پیش‌فرض Apache روی پورت 80، از مسیر http://localhost/demo/ قابل درخواست است.

نام سرویس پایگاه داده در کنترل‌پنل ممکن است MySQL باشد، اما بسته‌های XAMPP توضیح‌داده‌شده در راهنمای رسمی Apache Friends از MariaDB استفاده می‌کنند. برای نصب وردپرس، سازگاری نسخه PHP و پایگاه داده بسته انتخابی را با نیاز پروژه بررسی کنید.

چرا localhost باز نمی‌شود؟

پیش از نصب دوباره ابزارها، این موارد را بررسی کنید:

نشانهعلت احتمالیاقدام پیشنهادی
خطای ردشدن اتصالسرویس خاموش است یا پورت اشتباه استاجرای سرویس و آدرس کامل را بررسی کنید
پیام اشغال‌بودن پورتبرنامه دیگری همان آدرس و پورت را گرفته استسرویس مزاحم را شناسایی کنید یا پورت دیگری انتخاب کنید
خطای 404مسیر فایل درست نیستنام فایل و پوشه‌ای را که وب‌سرور ارائه می‌کند بررسی کنید
بازشدن 127.0.0.1 و مشکل با localhostتفاوت IPv4 و IPv6 یا تنظیمات نامآدرس اتصال سرویس را با مقصد مرورگر تطبیق دهید
نمایش صفحه، اما خرابی بعضی قابلیت‌هاوابستگی خارجی یا تنظیمات ناقص پروژهگزارش خطا، اتصال پایگاه داده و سرویس‌های خارجی را بررسی کنید

خاموش‌کردن کامل فایروال راهکار مناسبی برای عیب‌یابی اولیه نیست. ابتدا پیام خطا، وضعیت سرویس و تنظیمات اتصال را بررسی کنید.

نکات امنیتی و برداشت‌های نادرست درباره لوکال هاست

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

چند نکته دیگر نیز مهم‌اند:

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

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

پرسش‌های متداول

آیا استفاده از لوکال هاست به دامنه نیاز دارد؟

خیر. برای دسترسی محلی می‌توانید از نام localhost یا آدرس لوپ‌بک و پورت سرویس استفاده کنید. خرید دامنه برای این کار ضروری نیست.

چرا با واردکردن localhost در گوشی، سایت لپ‌تاپ نمایش داده نمی‌شود؟

چون localhost در گوشی به خود گوشی اشاره می‌کند. برای مشاهده سایت لپ‌تاپ باید از آدرس شبکه لپ‌تاپ استفاده کنید و سرویس و فایروال را برای دسترسی کنترل‌شده از شبکه محلی تنظیم کرده باشید.

آیا سایت محلی در گوگل نمایش داده می‌شود؟

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

آیا انتقال سایت از لوکال هاست به هاست فقط با کپی فایل‌ها انجام می‌شود؟

برای سایت ایستا ممکن است انتقال فایل‌ها کافی باشد. در سایت‌های پویا معمولاً باید پایگاه داده، متغیرهای محیطی، آدرس‌ها، اطلاعات اتصال و تنظیمات سرویس‌ها را نیز منتقل یا اصلاح کنید.

جمع‌بندی

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

برای شروع، ابزار متناسب با پروژه را انتخاب کنید، آدرس و پورت سرویس را بشناسید و دسترسی آن را محدود نگه دارید. پیش از انتشار نیز تفاوت تنظیمات، نسخه‌ها و وابستگی‌های محیط محلی و سرور را بررسی کنید.

اشتراک‌گذاری:
ِDanial Sargordan
ِDanial Sargordan

نویسنده و کارشناس لاجیک سرور در حوزه هاست، سرور و زیرساخت وب.

مقالات مرتبط

میزبانی وب

تفاوت سرور و هاست چیست؟ به زبان ساده و با راهنمای انتخاب

هنگام راه‌اندازی سایت، انتخاب بین هاست و سرور فقط مسئله قیمت نیست؛ باید بدانید چه منابعی دریافت می‌کنید و مسئول نگهداری آن‌ها چه کسی است. این راهنما تفاوت این دو مفهوم را روشن می‌کند و کمک می‌کند بر اساس نیاز نرم‌افزاری، بودجه و توان فنی خود، گزینه مناسب‌تری انتخاب کنید.

۹ دقیقه ۱۱
میزبانی وب

دلایل مصرف بالای CPU در سرور و هاست + راهنمای رفع مشکل

مصرف CPU سرور بالا رفته، سایت کند شده و درخواست‌ها پشت صف مانده‌اند؛ اما آیا واقعاً به منابع بیشتری نیاز دارید؟ گاهی مشکل از یک کوئری سنگین یا کد ناکارآمد است و گاهی از ترافیک ربات‌ها، اجرای هم‌زمان کارهای پس‌زمینه یا محدودیت سهمیه هاست. پیش از ری‌استارت یا ارتقای سرویس، باید منشأ فشار را پیدا کنید. در این راهنما، با بررسی شاخص‌های عملکرد، پردازش‌ها و لاگ‌ها، علت مصرف بالای CPU را شناسایی می‌کنیم

۱۵ دقیقه ۵
میزبانی وب

چه مقدار منابع هاست برای سایت من لازم است؟ RAM، CPU و فضای ذخیره‌سازی

برای انتخاب هاست مناسب، فقط تعداد بازدیدهای سایت را در نظر نگیرید. در این راهنما یاد می‌گیرید چگونه نیاز واقعی سایت خود به RAM، CPU، فضای ذخیره‌سازی و پهنای باند را تخمین بزنید و بدون پرداخت هزینه اضافی، پلن مناسبی انتخاب کنید.

۱۶ دقیقه ۴

دیدگاه‌ها (۰)

هنوز دیدگاهی ثبت نشده است. اولین نفر باشید!

ثبت دیدگاه

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