当前位置:网站首页>thinkphp3.2.3中设置路由,优化url
thinkphp3.2.3中设置路由,优化url
2022-07-07 14:06:00 【全栈程序员站长】
需求: 访问这个目录的时候,http://xx.com/p-412313要重定向到(暂且这么叫)http://xx.com/Home/Blog/index/id/412313
就是看着好看
我的应用目录是Application。模块是Home
第一步:知道哪个文件怎么处理的路由 路由处理在think/Route.class.php
- // 动态路由处理
- $routes = C(‘URL_ROUTE_RULES’);
- // var_dump($routes);
- if(!empty($routes)) {
- // dump($routes);
- //array(1) {
- // [“/^p-(\d+)$/”] => string(16) “Blog/index?id=:1”
- //}
- // echo “rount.class.php\n”;
- foreach (routes as rule=>
- if(is_numeric($rule)){
- // 支持 array(‘rule’,’adddress’,…) 定义路由
- rule = array_shift(route);
- }
- …代码多,仅标识位置
第二步:在项目模块的配置文件下,设置配置文件 如下(因为tp是逐级加载配置文件,惯例配置->应用配置->模式配
置->调试配置->状态配置->模块配置->扩展配置->动态配置,这里属于模块配置
- <?php
- return array(
- ‘MODULE_ALLOW_LIST’ => array(‘Home’,‘Admin’,‘Common’),
- ‘DEFAULT_MODULE’ => ‘Home’, // 默认模块
- ‘DEFAULT_CONTROLLER’ => ‘Index’, // 默认控制器名称
- ‘DEFAULT_ACTION’ => ‘index’, // 默认操作名称
- // 路由规则
- ‘URL_ROUTER_ON’ => TRUE,
- ‘URL_ROUTE_RULES’ => array(
- ‘/^c-(\d+)$/’ => ‘Index/content?id=:1’
- ),
- ‘URL_ROUTER_ON ‘=>true,
- ‘URL_MODEL’ => ‘1’,
- ‘URL_ROUTE_RULES’=>array(
- ‘/^p-(\d+)$/’ => ‘Home/Blog/index?id=:1’,//意思是访问x.com/p-34 会访问的是x.com/Blog/index/id/34
- ),
- );
第三部: 如果你没有设置默认的模块 ,会出现找不到p-34这个模块的错误。 那么需要在index.php中设置 define(‘BIND_MODULE’,’Home’);
这样就可以了。
说明:如果没有第三步。默认打开是正常的就是这样。
但是
所以我们操作第三步,就可以实现如下效果了:
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/113178.html原文链接:https://javaforall.cn
边栏推荐
- There are many ways to realize the pause function in JS
- TCP framework___ Unity
- 无线传感器网络--ZigBee和6LoWPAN
- AE learning 01: AE complete project summary
- Leetcode-136-只出现一次的数(用异或来解答)
- Regular expression string
- Syntaxhighlight highlights the right scroll bar
- 如何在shell中实现 backspace
- 深度之眼(六)——矩阵的逆(附:logistic模型一些想法)
- Apache Doris just "graduated": why should we pay attention to this kind of SQL data warehouse?
猜你喜欢

山东老博会,2022中国智慧养老展会,智能化养老、适老科技展
![[flower carving experience] 15 try to build the Arduino development environment of beetle esp32 C3](/img/8f/ca9ab042916f68de7994d9f2124da9.jpg)
[flower carving experience] 15 try to build the Arduino development environment of beetle esp32 C3

LeetCode3_ Longest substring without duplicate characters

Virtual memory, physical memory /ram what

Vite path alias @ configuration

深度之眼(七)——矩阵的初等变换(附:数模一些模型的解释)

Whole process analysis of unity3d rendering pipeline

Shipping companies' AI products are mature, standardized and applied on a large scale. CIMC, the global leader in port and shipping AI / container AI, has built a benchmark for international shipping
![Application example of infinite list [uigridview]](/img/11/3be1c63680e6de8f068e79690ecf12.jpg)
Application example of infinite list [uigridview]

C4D learning notes 3- animation - animation rendering process case
随机推荐
Postman generate timestamp, future timestamp
Vite path alias @ configuration
Three. JS introductory learning notes 05: external model import -c4d into JSON file for web pages
Dotween -- ease function
喜讯!科蓝SUNDB数据库与鸿数科技隐私数据保护管理软件完成兼容性适配
Aerospace Hongtu information won the bid for the database system research and development project of a unit in Urumqi
Learn good-looking custom scroll bars in 1 minute
Eye of depth (VII) -- Elementary Transformation of matrix (attachment: explanation of some mathematical models)
TCP framework___ Unity
95. (cesium chapter) cesium dynamic monomer-3d building (building)
C Alibaba cloud OSS file upload, download and other operations (unity is available)
TS typescript type declaration special declaration field number is handled when the key key
Three. JS introductory learning notes 13: animation learning
AE learning 01: AE complete project summary
C4D learning notes 1- animation - animation key frames
Numpy --- basic learning notes
torch.numel作用
星瑞格数据库入围“2021年度福建省信息技术应用创新典型解决方案”
招标公告:2022年云南联通gbase数据库维保公开比选项目(第二次)比选公告
Lecturer solicitation order | Apache seatunnel (cultivating) meetup sharing guests are in hot Recruitment!