有些项目要将移动端和PC端分离开来,比如访问xxx.com,展示的是PC端的页面。而访问m.xxx.com,展示的是移动端的页面。thinkphp源码需要多多学习,这里记录一下知识点,顺便分享给需要的同学。

在thinkphp5中可以这样操作:

首先,在application\config.php修改url_domain_deploy为true,如下:

'url_domain_deploy' =>  true

其次,在application\route.php注册域名部署规则。

其中m是子域名,而mobile是模块名.这段表示任何以m为子域名的访问,都会被解析到mobile模块。

<?php
use think\Route; Route::domain('m','mobile');

如果是在本地配置,要在hosts中添加

127.0.0.1  xxx.com
127.0.0.1 m.xxx.com

另外:
在apache或nginx中要配置两个虚拟主机,一个域名为xxx.com,另一个域名为m.xxx.com。根目录都指向public文件夹,但两个的端口号不能相同。

05-25 19:54