IIS接受泛解析域名,Laravel解析不同的二级域名

将域名泛解析到指定的主机后,可以通过IIS接受所有的泛解析域名并让程序做相应的处理。接收泛解析域名的所有二级域名,只需要在绑定域名(主机头)的时候留空就行了,目录正常指向你的网站目录。

blob.png


Laravel接收,解析url获取二级域名,做相应的处理

Route::get('/', 'Admin\IndexController@CheckUrlType');

public function CheckUrlType(Request $request)
{
    //改成获取前缀
    $url = $request->url();
    $strat = 7;//  http://
    $end = strpos($url,'.');
    $name = substr($url,$strat, $end - $strat);

    if($name == 'dl') return redirect('admin/index');//主网站的二级

    //处理映射情况 --自定义的高级用户名
    $map = MapName::where('from_name',$name)->first();
    if(!empty($map))
    {
        //修改为映射到的实际用户名
        $name = $map->to_name;
    }

    $checkUser = AdminUser::where('name',$name)->first();
    if(empty($checkUser) || !$checkUser->hasRole()){
        dd('该二维码不存在');
    }

    $id = $checkUser->id;//每个用户的二级域名就是它的用户名,通过用户名获取对应的类容
    return view('admin/bagent/registerview',compact('id'));
}


这样子,就可以实现像一些博客网站那样,用你的用户名做二级域名访问后,是专属于你的内容,这样的功能了


首页 我的博客
粤ICP备17103704号