گیک فارسی

نوشته های یک گیک فارسی از فعالیت ها ،‌ علاقه مندی ها و نقد هایش

چگونه به جای localhost از یک دامنه در Apache , NodeJs یا Nginx استفاده کنیم؟

بدون دیدگاه

اگر شما یک توسعه‌دهنده ‌Backend باشید از جمله مشکلاتی که غالبا برخورد میکنید این هست که در آموزشها عموما از localhost و شاید هم یک Port به دنبال آن مثل localhost:8080 استفاده میکنند که دردسری‌هایی در زمان استفاده از Cookie ها یا زمانی که با سایت‌های متعدد کار میکنیم به وجود می‌آید.

راه حل این مشکل استفاده از نام یک دامنه به جای localhost است که اصلاً نیاز به ایجاد Local DNS و دانش خاصی در رابطه با تنظیمات شبکه وجود ندارد. روی سیستم‌‌های لینوکسی و به تبعیت از Unix بر روی ویندوز فایلی به نام hosts وجود داره که شما می‌توانید یک FQDN (منظور نام یک دامنه هست مثل mysite.com یا www.mysite.com) را به یک آدرس IP متناظر کنید.

فایل مذکور بر روی سیستم عامل لینوکس در مسیر etc/hosts/ و بر روی سیستم عامل ویندوز در آدرس C:\Windows\System32\drivers\etcقرار گرفته است.

برای اینکه به جای localhost از نام دامنه مورد نظر خود استفاده کنیم فایل hosts را ویرایش میکنیم به گونه‌ای که در هر خط ابتدا آدرس IP مورد نظر و سپس FQDN یا همان نام دامنه مورد نظر را می‌نویسیم ،‌ آدرس IP برای اشاره به سیستم خودمان (همان localhost) مقدار ۱۲۷٫۰٫۰٫۱ است.

۱۲۷٫۰٫۰٫۱ mysite.com

حالا اگر دستور ping mysite.com را بنویسید آدرس IP برگردانده شده مقدار ۱۲۷٫۰٫۰٫۱ خواهد بود و می‌توانید از این آدرس در تنظیمات سرویس دهنده مورد استفاده مانند آپاچی ، express بر روی NodeJs یا Nginx و غیره استفاده کنید.

بدیهی است می‌توانید دامنه‌های بیشتری را بر روی آدرس IPسیستم خودمان یعنی ۱۲۷٫۰٫۰٫۱ متناظر کنیم همانطور که اگر دقت کنید localhost هم در همین فایل به صورت پیش‌فرض متناظر شده است.

از آنجا که فایل hosts نسبت به DNS ارتباط اینترنتی ما بر روی سیستم عامل ارجحیت دارد بهتر است به جای استفاده از TLDهای معروف مانند com نامی مانند local را به کار بریم و به جای mysite.com از mysite.local استفاده کنیم تا تداخلی با دامنه سایت‌‌های آنلاین نداشته باشیم.



برچسب‌ها:

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *