将域名泛解析到指定的主机后,可以通过IIS接受所有的泛解析域名并让程序做相应的处理。接收泛解析域名的所有二级域名,只需要在绑定域名(主机头)的时候留空就行了,目录正常指向你的网站目录。
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')); }
这样子,就可以实现像一些博客网站那样,用你的用户名做二级域名访问后,是专属于你的内容,这样的功能了