سلام
اگه طراح وب باشین، حتما با این موضوع مواجه شدین که گاهی نیاز دارین خروجی کار خودتون رو تو گوشی ببینید،
راه های مختلفی برای اینکار وجود داره، ولی خب هر کدوم چالش های خاص خودشون رو دارن، از مشکلات فایروال گرفته تا …
«اتصال دامنه به آی پی لوکال» هم یکی از همین راه هاست که طی این پست نحوه استفاده ازش رو توضیح میدم.
به عنوان مثال اگه در حال طراحی یه PWA یا وب اپ برای یه پروژه با یکی از فریم ورک های PHP باشید، شاید به این چالش بر بخورید.
تو حالت عادی وقتی نیاز دارین تا سایت رو روی دامنه تست کنید، خب قطعا از لوکال دامین استفاده می کنید،
به این ترتیب که اول فایل hosts سیستم عامل رو تغییر میدین و بعد با کانفیگ httpd-vhosts یه دامنه لوکال ایجاد می کنید که وقتی تو مرورگر خودتون، آدرس سایت رو میزنین، پروژه تون به صورت لوکال میاد بالا و در واقع پروژه رو روی سیستم خودتون ولی با دامنه ای که برای تنظیم کردین میبینید.
ولی
ولی وقتی نیاز دارین که سایت رو روی گوشیتون هم ببینیند، اگه آدرس همون دامنه رو بزنین، چون gateway متفاوتی دارن، چیزی به شما نمایش داده نمیشه.
این پست برای حل همین چالش هست.
چه اتفاقی قراره بیافته ؟
قراره وقتی آدرس دامین یا ساب دامنه مورد نظر خودتون رو تو گوشی میزنین، سایتی که در حال طراحی اون هستید رو روی گوشی ببینید.
البته که این فقط محدود به گوشی نیست و تمام سیستم های موجود تو شبکه داخلی شما میتونن با زدن اون آدرس خروجی کار شما رو ببینین.
شبکه داخلی چیه ؟
چیز خاصی نیست، همین که گوشی رو هات اسپات می کنین و با لپ تاپ بهش متصل میشید تا از اینترنت اون استفاده کنید، در واقع یه شبکه تشکیل دادید که کامیوتر و گوشی شما از نود های اون شبکه محسوب میشن.
نکته:
این مطلب رو با این تصور مینویسم که مخاطب های اون با مفاهیم دامنه، سرور، کلاد فلیر، شبکه و دامنه لوکال آشنایی دارن.
موارد مورد نیاز:
دامنه، یه اکانت کلاد فلیر (یا یه سرویس مشابه که بتونین راحت dns دامنه رو مدیریت کنید) و یک شبکه داخلی (همون هات اسپات گوشی هم اوکیه)
خب شروع کنیم
قدم اول:
دامنه مورد نظر خودتون رو روی xampp/wampp یا هرچیز دیگه ای که دارید استفاده می کنید معرفی کنید،
برای xampp به این صورت معرفی میشه:
فایل httpd-vhosts.conf رو باز کنید، تو این مسیر قرار داره:
xampp\apache\conf\extra
یه دامنه با نام دلخواه به اون اضافه کنید، نحوه اضافه کردن دامنه به این شکله، کافیه کد زیر رو به دلخواه خودتون تغییر بدین و به فایل بالا اضافه کنید:
<VirtualHost test.copypastekon.ir> // آدرس دامنه یا ساب دامنه مورد نظر خودتون رو اینجا وارد کنید DocumentRoot "M:\xampp\htdocs\copypastekon" // مسیری که پروژه اونجا قرار داره ServerName test.copypastekon.ir // تکرار مجدد نام دامنه یا ساب دامنه <Directory "M:\xampp\htdocs\copypastekon"> // مسیر پروژه Order allow,deny Allow from all </Directory> </VirtualHost>
حالا تغییری که تو httpd-vhosts.conf دادین رو ذخیره و xampp رو ری استارت کنید.
حالا سیستم شما آمادگی این رو داره که اگه کسی با درخواست دامنه مثلا test.copypastekon.ir به اون مراجعه کرد، درخواست رو طبق کانفیگی که انجام دادین جواب بده.
لازم به ذکر است: در صورتی که xampp / wampp و … فعال باشن.
حالا cmd رو باز کنید، عبارت: ipconfig رو تایپ کنید،
اگه کامپیوتر شما به hotspot گوشی وصل باشه، تو خروجی دستور بالا یه سری اطلاعات نمایش داده میشه، دنبال آی پی لوکال خودتون بگردین
همونطور که تو تصویر میبینید، اینجا آی پی لوکال من 192.168.43.171 هست.
خب حالا به اکانت کلاد فلیر خودتون مراجعه کنید و وارد تنظیمات Dns دامنه ای که قصد تست پروژه اون رو دارید بشین.
یه A رکورد با نام دامنه ای که اون بالا تو فایل httpd-vhosts.conf وارد کرده بودین، ایجاد کنید و برای آی پی اون، آی پی لوکال سیستم خودتون رو وارد کنید و اون رو ذخیره کنید.
مثلا من به تنظیمات dns دامنه copypastekon.ir میرم و یه A record ایجاد می کنم با نام test.copypastekon.ir و آی پی اون رو 192.168.43.171 قرار میدم.
و تمـــام
حالا توی گوشی یا سیستم یا هر کدوم از نود های شبکه، ادرس دامین خودتون رو بزنین پروژه تون (به شرط فعال بودن وب سرور) میاد بالا.
پ.ن:
امیدوارم به کارتون بیاد
#یا_علی