مسیریابی
مسیریابی http در این فریمورک به این معناست که فریمورک بعد از دریافت درخواست مرورگر برای بازکردن یک آدرس خاص آن را به کنترلری تحویل دهد. فریمورک این کار را براساس قوانین موجود در پکیج ها انجام میدهد.این قوانین از طریق معرفی آدرس، دامنه، پروتکل و شیوه ارسال (method) معرفی میشوند.
تنظیمات
برای انجام تنظیمات مسیریابی باید به فایل
config.php
که در مسیر packages/base/libraries/config
قرار دارد مراجعه نمایید.
تنظیم دامنه
زمانی که میخواهید سایت بجر دامنه اصلی از طریق دامنه یا زیر دامنه های دیگر باز شود باید دامنه ها و یا زیر دامنه ها را در آپشن packages.base.router.defaultDomain
معرفی شوند.
'packages.base.router.defaultDomain' => ['panel.domain.com', 'domain.com']
تنظیم پروتکل
برای تنظیم پروتکل ازآپشن packages.base.routing.scheme
استفاده میشود. پرتوکل روی هر آپشنی تنظیم شود فریمورک هنگام بازشدن سایت بهطور خودکار روی آپشن تنظیم شده ریدایرکت میشود.
بطور مثال اگر سایت گواهینامه دارد و این آپشن با مقدارhttps تنظیم شود; اگر سایت در حالت http باشد، به صورت خودکار به https ریدایرکت میشود.
'packages.base.routing.scheme' => 'http' // https
اضافه کردن اسلش به انتهای آدرس
اگر آپشن packages.base.routing.lastslash
برابر true باشد زمانی که ادرس url باز میشود به انتهای آدرس اسلش اضافه میشود.
(تنظیم این آپشن مطابق با سلیقه برنامه نویس و یا مدیر سایت میباشد.)
'packages.base.routing.lastslash' => true //false
مثال 1
'packages.base.routing.lastslash' => true
/*
url: domain.com/fa/contact-us/
*/
مثال 2
'packages.base.routing.lastslash' => false
/*
url: domain.com/fa/contact-us
*/
تنظیم www
برای وجود www
در کنار دامنه از آپشن packages.base.routing.www
استفاده میشود.
اگر آپشن مقدار withwww
داشته باشد اگر domain.com را وارد کنیم www. به ابتدای آن اضافه میشود
درصورتی که مقدار nowww
داشته باشد اگر آدرس www.domain.com را وارد کنیم www. از ابتدای آدرس حذف خواهد شد.
توجه : آپشن در هر حالتی تنظیم شود اگر سایت در حالت دیگر باز شود، فریمورک بطور خودکار به حالت تنظیم شده ریدایرکت میشود.
بطور مثال اگر آپشن مقدار withwww
داشته باشد و آدرس به صورت domain.com وارد شود، فریمورک به آدرس www.domain.com ریدایرکت میشود.
'packages.base.routing.www' => 'nowww' // withwww