1. thinkphp5 现在开启强制路由,想要传递多个参数,做筛选功能的传参数功能,在route.php,怎么定义路由
用&连接不同键值试试
2. thinkphp 怎样动态配置路由,怎样从数据库调取数据来配置路由
用这个方法: Route::get('detail-<name>-<id>', 'proct/detail');
<name>和<id> 后台自己定义内容
例:域名/detail-xxxx-23
xxxx 从数据库调取数据
3. thinkphp5配置二级域名
最近有一个项目要将移动端和PC端分离开来,比如访问xxx.com,展示的是PC端的页面。而访问m.xxx.com,展示的是移动端的页面。
在thinkphp5中可以这样操作:
首先,在applicationconfig.php修改url_domain_deploy为true,如图:
其次,在application
oute.php注册域名部署规则。
其中m是子域名,而mobile是模块名.这段表示任何以m为子域名的访问,都会被解析到mobile模块。
如果是在本地配置,要在hosts中添加
另外:
在apache或nginx中要配置两个虚拟主机,一个域名为xxx.com,另一个域名为m.xxx.com。根目录都指向public文件夹,但两个的端口号不能相同。
参考: https://www.kancloud.cn/manual/thinkphp5/118039
4. 关于thinkphp配置路由无效果的解决方案
1、打开“config.php”,找到'url_route_on',改为true
2、打开“route.php”,例如:“www.hyxx.com/Index.php/api/user/index/id/2” 改为“api.hyxx.com/user/2”(api.hyxx.com为之前设置的二级域名)。那么就在return中写成 '/user/[:index]' => ['/Index.php/api/user/index/id/2',['method'=>'get']],
例如:“www.hyxx.com/Index.php/api”改为“api.hyxx.com”.。就写成 ' '=>['/index.php/api',['method'=>'get']],
里面的请求方式,自己去试探。
5. ThinkPHP怎么实现伪静态
1、实现伪静态方法:
1)隐藏入口文件:http://doc.thinkphp.cn/manual/hidden_index.html
2)结合使用URL路由:http://doc.thinkphp.cn/manual/url_route.html
3)配置伪静态后缀名:HTML_FILE_SUFFIX => '';
上面三个都用上,基本都OK了!当然,还可以通过服务器重写URL
2、设置让地址栏不能访问文件夹:
1)每个文件夹添加一个index.html空文件(因服务器默认的首页而异同),假如默认首页是 index.html 那就 添加index.html
2)也可以通过服务器配置目录访问权限
6. thinkphp网站程序模板在哪个文件下
一般在 application 下,里面会有 mole ,在往里面才是 controller model 和view,view即是存放模板的目录。
7. thinkphp开发的问题,高手进
这个问题可以划分到【路由】问题上,
通过定义路由规则,可以实现提出的效果。先看一下路由规则的定义:
Route::rule(‘路由表达式’,‘路由地址’,‘请求类型’,‘路由参数(数组)’,‘变量规则(数组)’);
所以,可以这样试一下(我假设video/id/12.html是index模块下Videos控制器下的video操作)
Route::rule('video/cat_id/:id','index/Videos/video');
对了,route.php文件在app的根目录里,添加以上路由规则,如果不对,可按照这个思路多测试几下