thinkphp3.2.3中设置路由,优化url

thinkphp3.2.3中设置路由,优化url

需求: 访问这个目录的时候,http://xx.com/p-412313要重定向到(暂且这么叫)http://xx.com/Home/Blog/index/id/412313

 

就是看着好看

我的应用目录是Application。模块是Home

第一步:知道哪个文件怎么处理的路由
路由处理在think/Route.class.php

  1. // 动态路由处理  
  2.         $routes =   C(‘URL_ROUTE_RULES’);  
  3.         // var_dump($routes);  
  4.   
  5.         if(!empty($routes)) {  
  6.             // dump($routes);  
  7.             //array(1) {  
  8.                 // [“/^p-(\d+)$/”] => string(16) “Blog/index?id=:1”  
  9.             //}  
  10.             // echo “rount.class.php\n”;  
  11.             foreach ($routes as $rule=>$route){  
  12.                 if(is_numeric($rule)){  
  13.                     // 支持 array(‘rule’,’adddress’,…) 定义路由  
  14.                     $rule   =   array_shift($route);  
  15.                 }  
  16.      …代码多,仅标识位置  

第二步:在项目模块的配置文件下,设置配置文件 如下(因为tp是逐级加载配置文件,惯例配置->应用配置->模式配

置->调试配置->状态配置->模块配置->扩展配置->动态配置,这里属于模块配置

  1. <?php  
  2. return array(  
  3.   
  4.   
  5.     ‘MODULE_ALLOW_LIST’ => array(‘Home’,‘Admin’,‘Common’),  
  6.      ‘DEFAULT_MODULE’       =>    ‘Home’,  // 默认模块  
  7.      ‘DEFAULT_CONTROLLER’    =>  ‘Index’, // 默认控制器名称  
  8.      ‘DEFAULT_ACTION’        =>  ‘index’, // 默认操作名称  
  9.          //    路由规则  
  10.     ‘URL_ROUTER_ON’ => TRUE,  
  11.     ‘URL_ROUTE_RULES’ => array(  
  12.         ‘/^c-(\d+)$/’ => ‘Index/content?id=:1’  
  13.     ),  
  14.      ‘URL_ROUTER_ON ‘=>true,  
  15.      ‘URL_MODEL’          => ‘1’,  
  16.   
  17.      ‘URL_ROUTE_RULES’=>array(     
  18.        ‘/^p-(\d+)$/’ => ‘Home/Blog/index?id=:1’,//意思是访问x.com/p-34 会访问的是x.com/Blog/index/id/34  
  19.   
  20.          ),  
  21. );  

第三部:
如果你没有设置默认的模块 ,会出现找不到p-34这个模块的错误。
那么需要在index.php中设置
define(‘BIND_MODULE’,’Home’);

这样就可以了。

说明:如果没有第三步。默认打开是正常的就是这样。

thinkphp3.2.3中设置路由,优化url

但是

thinkphp3.2.3中设置路由,优化url

 

所以我们操作第三步,就可以实现如下效果了:

thinkphp3.2.3中设置路由,优化url

 

thinkphp3.2.3中设置路由,优化url

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113178.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 五大优秀的数据库设计工具[通俗易懂]

    五大优秀的数据库设计工具[通俗易懂]数据库的设计主要是针对一个特定的个环境,为了能够满足有效的数据存储和处理等要求,需要构造最优的数据库模式来建立数据库及其对应系统。数据库设计时根据用户的需求,在特定的数据库管理系统上设计和建立数据库的过程,是软件系统开发过程中的关键技术之一。在数据库领域内,通常把使用数据库的各类系统统称为数据库应用系统。数据库设计的目的是把软件系统中大量的数据按一定的模型组织起来,以实现方便、及时地存储、维护和检索等功能,是软件系统开发和建设的关键和重要组成部分之一,因此数据库设计往往比较复杂,最佳设计不可能一蹴而就,需

    2022年7月27日
    8
  • Redis应用-异步消息队列与延时队列

    Redis应用-异步消息队列与延时队列

    2022年2月18日
    32
  • 如何求原根_求模47的所有原根

    如何求原根_求模47的所有原根说这种最好就是举个例子比如说求81的所有原根 先说欧拉函数通式:通式:φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中p1,p2……pn为x的所有质因数,x是不为0的整数。φ(1)=1(唯一和1互质的数(小于等于1)就是1本身)。(注意:每种质因数只一个。比如12=2*2*3那么φ(12)=12*(1-1/2)*(1-1/…

    2025年7月5日
    0
  • dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件

    dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件

    2021年10月7日
    59
  • kotlin相比于java的好处和坏处_kotlin和java

    kotlin相比于java的好处和坏处_kotlin和java什么是Kotlin?什么是Java?主要区别:Kotlin的特点Java的特点Kotlin的历史JAVA的历史Kotlin和Java的区别Kotlin的优势Java的优势Kotlin的缺点Java的缺点哪个更好?

    2022年10月22日
    0
  • CSDN 2018博客之星评选,感谢大家的投票

    那些曾走过的路,看过的风景!2018博客之星评选,我在CSDN三年了,虽然没成为大神,大佬,但是这一路上一直在坚持,在进步, 感谢大家一路对我的支持和鼓励,虽然2018年这一年过的比较压抑,但是我期待2019。2019我会好好调整自己,输出更多好的内容!谢谢你为我投票! 2019祝你我 有酒,有肉 ,有故事! 我的投票专属地址 : 点我投票 #70 ,谢谢感谢 2018 那些走…

    2022年2月27日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号