اضافه کردن ساب دامین در لاراول
- دسته بندی : لاراول
- تاریخ انتشار : ۰۸ دی ۱۳۹۹
- تاریخ به روز رسانی : ۰۹ دی ۱۳۹۹

بعضی مواقع لازم میشود که زیر دامنه ها ( ساب دامین ها ) را در اپلیکیشن لاراولی خود مدیریت کنیم. حال بررسی کنیم که چگونه می توانیم مسیرها ( routes ) را به صورتی تغییر دهیم که داینامیک رفتار کنند و زیر دامنه را با Valet و Forge تنظیم کنیم؟
تعریف ساب دامین در روت
طبق مستندات لاراول ، ما می توانیم به راحتی ساب دامین را در فایلهای روت خودمان تنظیم کنیم. ما می توانیم از یک زیر دامنه ثابت ( استاتیک ) استفاده کنیم ، همچنین می توانیم از wildcard نیز در زیر دامنه خودمان استفاده کنیم.
// Static subdomain Route::domain('app.yourapp.com')->group(function ($router) { // }); // Wildcard subdomain Route::domain('{user}.yourapp.com')->group(function ($router) { // });
همان طور که دیدید ما میتوانیم مانند یک مورد عادی یک پارامتر برای روت داشته باشیم مثلا برای اتصال route-model از آن استفاده کنیم. همچنین در بعضی موارد دیگر می توانیم فقط از سابدامین های استاتیک استفاده کنیم برای مثال وقتی که میخواهیم یک قسمت از اپلیکیشن مان را از بقیه برنامه جدا کنیم.
سابدامینهای داینامیک ( پویا ) تولید کنید
اینکه ما از ساب دامین ها را در فایل روت خود وارد کنیم یک کدنویسی سخت و زمانبر است مخصوصا ما دامین ها مختلفی در محیط لوکال استفاده کنیم ، بنابراین روش قبلی راه حل مناسبی نیست. در روش دیگر دامین فعلی خودمان را در متغیر App_URL در فایل .env تنظیم میکنیم. با استفاده از این روش ما میتوانیم بدونکدنویسی سخت و زمانبر ، ساب دامین ( زیر دامنه ) مناسب را بسته به محیط تولید کنیم.
APP_URL=https://pinecode.test $domain = '{user}.' . parse_url(config('app.url'), PHP_URL_HOST); Route::domain($domain)->group(...);
حالا میتوانیم App_URL را به هر چیز دیگری تغییر دهیم و همچنین میتوانیم سابدامین ثابت و یا پارامترهای wildcard را ضمیمه کنیم.
ساب دامینهای فیک در valet
پوشهبندی است ، ما به سادگی میتوانیم لینک های فیک برای پوشه های اپلیکیشن مان ایجاد کنیم . وقتی به سابدامین رسیدیم ، valet لینک های نمادین را لود خواهدکرد و به سادگی میتوانیم لینک های فیک را ایجاد کنیم.
ln -s example app.example
استفاده از wildcard ها به همراه valet روش مناسبی به نظر نمیرسد ، اما ما میتوانیم برای درک مفهوم اولیه wildcard چندین لینک فیک را برای تست و آزمایش ایجاد کنیم.
تنظیم سابدامینها در forge
تذکر : قبل از هر چیزی شما باید اطمینان حاصل کنید که تنظیمات DNS مناسب را در ارائه دهنده DNS خود دارید.
اگر شما می خواهید که به طور کامل wildcard خودتان را مدیریت کنید تنها کاری که باید انجام بدهید تیک ” Allow wildcard sub-Domains” را بزنید و سپس سایت خود را ایجاد کنید.
اما در صورتی که میخواهید که wildcardها را برای سایت ساخته شده تنظیم کنید و یا فقط یک ساب دامین اضافه کنید ، شما نیاز دارید که فایل کانفیگ Nginx را تغییر دهید. برای این کار سایتی را که میخواهید ویرایش کنید انتخاب کنید و بر روی منوی از آدرس زیر کلیک کنید:
Configuration File > EditNgin
به خط هفتم جایی که دامنهها تعریف شدهاند بروید. برای ایجاد دسترسی برای wildcard subdomains فقط کافی است به دامنه خود یک ” . ” اضافه کنید
# Before server_name example.com; # After server_name .example.com;
اگر می خواهید یک ساب دامین در کنار دامنه اصلی خود مشخص کنید ، فقط باید آن را در کنار دامنه موجود اضافه کنید :
# Before server_name example.com; # After server_name example.com app.example.com;
پس از اینکه شما این تنظیمات را ذخیره کردید و در صورتی که تنظیمات DNS شما مشکلی نداشته باشد ، سابدامین شما باید کار کند .
تذکر : اگر شما تنظیمات ssl در forge خود دارید ، فراموش نکنید که برای ساب دامین خود یک مورد جدید ایجاد کنید.
نظرات کاربران