Matawebsite Promo Lebaran 2022

Laravel Wildcard SubDomain

date 23 Nov 2020
date Lev Yasin
date 642
date Web Programming
Laravel Wildcard SubDomain

Dalam sistem multi-tenancy modern, memberikan sub-domain tertentu untuk setiap pengguna atau perusahaan seperti blog.matawebsite.com  cukup populer . Bagaimana cara menangani subdomain ini di route Laravel?

Kode di routes / web.php cukup mudah:

Route::domain('{company_name}.domain.com')->group(function () {
    Route::get('users', 'UsersController@index');
});

Jadi {company_name} dapat berupa nilai apa pun ( tentu saja, Anda juga perlu mengonfigurasikannya di data DNS domain Anda ), lalu ini akan menjadi variabel parameter untuk Pengontrol, dengan nama yang sama.

public function index($company_name)
{
    $company = Company::findOrFail($company_name);
    $users = User::where('company_id', $company->id)->get();
    return view('users.index', compact('users'));
}

Dengan file route ini, kita akan menemui punya masalah. Lalu kita perlu mengkonfigurasi server lokal kita agar memiliki domain domain.com tertentu ? Jangan khawatir, ada obat untuk itu, kita bahkan dapat menjadikan domain itu variabel:

Route::domain('{company_name}.' . env('SITE_URL', 'domain.com'))->group( // ...

Jadi sekarang seluruh string akan terdiri dari dua variabel - subdomain dan domain utama, keduanya dapat dikonfigurasi.

Untuk lingkungan lokal Anda, Anda dapat mengatur sesuatu seperti domain workspace.test , dan kemudian menambahkan ini ke file .env Anda :

SITE_URL=domain.test

Jika Laravel tidak menemukan nilai apa pun untuk SITE_URL , nilai defaultnya adalah workspace.com .

Itu saja, semoga sukses dengan proyek multi-tenancy Anda!

Matawebsite Promo
lev_yasin.png

Lev Yasin

Instruktur Web Programming Mataweb

Sangat tertarik dengan dunia Pemrograman Web & Mobile, saat ini fokus pada bagian Backend Web Developer, menggunakan PHP sebagai bahasa pemrograman utama, biasanya saya menggunakan Laravel.

Artikel Populer

Halo, ada yang bisa kami bantu?
Daftar Sekarang