在用户注册后的Laravel应用程序中,我根据用户名为每个用户分配子域名。
如果用户想要访问非法和未注册的子域,我会显示404错误页面。
因为这是我的路线:
Route::group(['domain' => Config::get('app.url')], function () {
//some Other Routes for all Members
});
// Match a subdomain of my domain
Route::group(['domain' => '{username}.' . Config::get('app.url')], function () {
Route::get('/', ['uses' => 'DashboardController@home']);
Route::get('/news/{news_alias}', ['uses' => 'DashboardController@news_details']);
});
在 config / app.php 中,我有这样的网址选项:
'url' => 'tc.dev'
一切正常但我的问题是,当用户尝试打开 www.tc.dev 域名时,laravel会显示 404错误页面,因为laravel认为这是一个用户名和找不到它并显示错误页面。
如何从子域中排除 www ,以便充当普通域。
答案 0 :(得分:1)
我还没有使用过Laravel,但我认为这样做会有所帮助。
$routerFunction = function() {
//some Other Routes for all Members
};
Route::group(['domain' => Config::get('app.url')], $routerFunction);
Route::group(['domain' => 'www.' . Config::get('app.url')], $routerFunction);
// Match a subdomain of my domain
Route::group(['domain' => '{username}.' . Config::get('app.url')], function () {
Route::get('/', ['uses' => 'DashboardController@home']);
Route::get('/news/{news_alias}', ['uses' => 'DashboardController@news_details']);
});