当前位置: 首页 > news >正文

thinkphp 路由不支持.(点)的问题

tp版本:3.2.1 配置路由的时候碰到的问题,如下:

'URL_ROUTE_RULES' => array(
    '/^new\/(\d+)$/'            => 'News/read?id=:1',
    '/^new\/(\w+)$/'            => 'News/read?name=:1'
)

配置后访问没有问题,默认情况下 以任何后缀访问都能正常访问该页面,例如:

  http://t.com/home/new/1

  http://t.com/home/new/1.ps

  http://t.com/home/new/1.xxx

  http://t.com/home/new/1.ii

但是想配置成只能是.html或规定的几种格式结尾,其他后缀不想让支持 于是配置如下:

'URL_ROUTE_RULES' => array(
    '/^new\/(\d+)\.html$/'            => 'News/read?id=:1',
    '/^new\/(\w+)\.html$/'            => 'News/read?name=:1'
)

这时候就访问不了,文档说明

试过了还是不行

 

最后修改Route.class.php  58行左右

if(0===strpos($rule,'/') && preg_match($rule,$regx,$matches)) { // 正则路由

修改成

$subject = sprintf("%s.%s", $regx, __EXT__);
if(0===strpos($rule,'/') && preg_match($rule,$subject,$matches)) { // 正则路由

终于好了

转载于:https://www.cnblogs.com/hwt987/p/3665979.html

相关文章:

  • nyoj 306 二分+dfs
  • C#的变迁史 - C# 5.0 之并行编程总结篇
  • [翻译] TLMotionEffect 重力感应
  • d3.js读书笔记-1
  • 修改注册表来修改IE的设置---资料汇总
  • 最小二乘法(ZZ)
  • 系统初始化流程 跟着启动代码走
  • system(“pause”)和getchar()
  • AnyMap基于地图的统计图表下载使用指南
  • C# 图片截图(圆形)
  • 安装Java EE失败,解决方案
  • Unix/Linux中/usr目录的由来
  • asp.net C#绘制太极图
  • [翻译] NimbusKit
  • MySQL的一些语法总结
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • Apache Spark Streaming 使用实例
  • gitlab-ci配置详解(一)
  • go语言学习初探(一)
  • input的行数自动增减
  • iOS编译提示和导航提示
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • leetcode386. Lexicographical Numbers
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • PHP面试之三:MySQL数据库
  • spring boot 整合mybatis 无法输出sql的问题
  • Webpack 4 学习01(基础配置)
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 关于springcloud Gateway中的限流
  • 盘点那些不知名却常用的 Git 操作
  • 使用 @font-face
  • 微信开放平台全网发布【失败】的几点排查方法
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 整理一些计算机基础知识!
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • #LLM入门|Prompt#3.3_存储_Memory
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • $refs 、$nextTic、动态组件、name的使用
  • (1)bark-ml
  • (1)Nginx简介和安装教程
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • .md即markdown文件的基本常用编写语法
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .Net Remoting(分离服务程序实现) - Part.3
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • .NET多线程执行函数
  • [] 与 [[]], -gt 与 > 的比较
  • [20150707]外部表与rowid.txt