Aydnn Tam emin değilim ama belki şöyle bir şey yapılabilir:
app/AgencyDomain.php
class AgencyDomain
{
private static string $domain = null;
public static function get(): ?string
{
return static::$domain;
}
public static function set(string $domain): void
{
static::$domain = $domain;
}
}
app/Http/Middleware/ResolveAgencyDomain.php
class ResolveAgencyDomain
{
public function handle(Request $request, Closure $next): Response
{
$domain = $request->host();
if($domain != 'anadomain.com') {
AgencyDomain::set($domain);
}
return $next($request);
}
}
app/Http/Controllers/Acente/AcenteDomainController.php
public function index(Request $request)
{
$page = Model::where('domain', AgencyDomain::get())
->firstOrFail();
//...
}
routes/web.php
Route::middleware(ResolveAgencyDomain::class)->group(function() {
if(AgencyDomain::get()) {
Route::get('/', [AcenteDomainController::class, 'index']);
} else {
Route::get('/agency/{slug}', [AcenteController::class, 'index']);
}
});