如何将子域添加到Admin Panel Laravel Backpack(backpackforlaravel)



如何将子域添加到管理面板Laravel背包?我想添加一个子域到我的Laravel背包管理面板,我需要点"admin.example.com"子域到Laravel背板管理面板。Laravel背包为管理面板提供路由前缀。

我想使用相同的项目源代码的网站,管理员和API。

admin.example.com->管理员

api.example.com->api

www.example.com->站点

您可以让Laravel Backpack在子域下运行,例如admin.app.local,而不是前缀(例如app.local/admin(,如下所示:

.env文件中,您可以定义管理子域,如果您在不同的环境中工作,它会发生变化,则会很有用:

ADMIN_SUBDOMAIN = admin.app.local

可选地,您还可以在config/app.php中定义管理员是否使用子域,并添加:

'use_admin_subdomain' => true,

然后在config/backpack/base.php文件中,您将希望停止使用admin路由前缀,因为您将在子域中使用admin,因此您必须定义:

'route_prefix' => '',

然后在routes/backage/custom.php中,您将能够将所有路由包括在一个新组下,这将决定管理背包是否在子域(在app.use_admin_subdomain中定义(和子域(在env('admin_subdomain'(中定义(下运行,并且所有原始路由和组都将进入:

Route::group (
config('app.use_admin_subdomain') ? ['domain' => env('ADMIN_SUBDOMAIN')]: []
, function () {
... original backpack routes
});

可选地,在相同的背包路线文件中,您可以删除原始路线的前缀,注释:

'prefix' => config ('backpack.base.route_prefix', 'admin'),

尽管在config/package/base.php中为空,但没有任何效果。

您可以按照相同的过程在API.app.local子域下定义API路由,在这种情况下,在路由/API.php文件中。

最新更新