php - 关于用Laravel开发项目的疑惑
迷茫
迷茫 2017-04-10 18:05:23
[PHP讨论组]

我现在有一个项目需求
全网站都需要泛域名支持
比如:

account.xxx.com //就是专门负责用户帐号的
support.xxx.com //就是支持中心

然后注册的用户都会分配专属的二级域名,比如这样:

user1.xxx.com
user2.xxx.com
user3.xxx.com
...

那么问题来了,在laravel中,怎么去处理这个域名的处理操作呢?

我想的是如果的官方固定的域名跳转到一个控制器,用户的域名跳转到另一个控制器,但是我在哪个环节做这个操作呢?
中间件??还是路由呢?

我现在试验的是:
如果用户访问:account.xxx.com/signup这个页面,应该是进入注册页面
但是现在user1.xxx.com/signup也能访问,这个就不符合业务逻辑了
访问user1.xxx.com应该是进入该用户的管理页面,如何区分呢?

望大家给我一个逻辑!谢谢啦

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(2)
黄舟

Laravel的路由可以匹配域名:Sub-Domain Routing。

直接像文档中把二级域名传给控制器方法有时并不方便,可以结合middleware,在middleware里获得匹配到的域名,转成用户信息,放到服务里。

大家讲道理

你关注下Route::group(

['namespace'=>'',
'domain'=>你设定的域名,//可以写在config里
'middleware'=>],function()
{
    域名下可访问的路由
}

)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号