ThinkPHP 3.1.2 URL规则、URL伪静态、URL路由
一、URL规则
1、URL默认是区分大小写的
2、如果我们不想区分大小写可以改配置文件
'URL_CASE_INSENSITIVE'=>true,//值为true是说明url不区分大小写
3、如果模块名为 UserGroupAction
那么url找模块就必要要写成
http://localhost/thinkphp/index.php/user_group/index
4、如果'URL_CASE_INSENSITIVE'=>false //区分大小写
那么url也可以写为
http://localhost/thinkphp/index.php/UserGroup/index
二、URL伪静态
'URL_HTML_SUFFIX'=>'html|shtml|xml',//限制伪静态的后缀
三、URL路由
1、启动路由
要在配置文件中开启路由支持
'URL_ROUTER_ON'=>true,
并配置'URL_ROUTE_RULES'参数
2、使用路由
1.规则表达式配置路由
'my'=>'Index/index',//静态地址路由
':id/:num'=>'Index/index',//动态地址路由
'year/:year/:month/:date'=>'Index/index',//动态和静态混合地址路由
'year/:year\d/:month\d/:date\d'=>'Index/index',//动态和静态混合地址路由
加上 \d代表类型只能是数字
'my/:id$'=>'Index/index',// 加上$说明地址中只能是 my/1000 后面不能有其他内容
2.正则表达式配置路由
'/^year\/(\d{4})\/(\d{2})\/(\d{2})/'=>'Index/index?year=:1&month=:2&date=:3'
3、注意事项:
1.越复杂的路由越往前面放,否则造成url解析混乱
'URL_ROUTE_RULES'=>array(
'my/:year/:month:/:day'=>'Index/day',
'my/:id\d'=>'Index/index',
'my/:name'=>'Index/index',
)
2.可以使用$作为完全匹配的路由规则,表示以此结束,其后不能跟其他参数
'URL_ROUTE_RULES'=>array(
'my/:id\d$'=>'Index/index',
'my/:name$'=>'Index/index',
'my/:year/:month:/:day$'=>'Index/day',
),
3.用正则匹配的方式
'URL_ROUTE_RULES'=>array(
'/^my\/(\d+)$/'=>'Index/index?id=:1',
'/^my\/(\w+)$/'=>'Index/index?name=:1',
'/^my\/(\d{4})\/(\d{2})\/(\d{2})$/'=>'Index/day?year=:1&month=:2&day=:3',
),
相关推荐
接下来,我们详细介绍ThinkPHP的URL路由规则与配置方法,并提供实例进行分析。 一、URL规则 在ThinkPHP中,默认情况下URL是区分大小写的。如果需要让URL不区分大小写,可以在配置文件中设置URL_CASE_INSENSITIVE的...
这段代码会让Nginx将所有未找到的静态资源请求转发到`index.php`,通过ThinkPHP的URL路由机制处理。 4. **加载配置**:保存`demo.conf`后,执行`nginx -t`检查配置文件是否有错误,无误后用`nginx -s reload`命令...
总的来说,ThinkPHP的伪静态功能通过URL重写和路由规则配置,实现了动态URL到静态URL的转换,既提升了用户体验,又有利于SEO优化。理解并掌握这些知识点,对于开发出高质量、易维护的Web应用至关重要。
在ThinkPHP5中,路由规则定义了URL与控制器(Controller)和操作(Action)之间的映射关系。基础的路由配置允许开发者通过简单的规则将URL路径与控制器方法绑定,如`'/:controller/:action'`,这里的`:controller`和...
对于那些不支持URL重写的服务器环境,ThinkPHP提供了伪静态URL的设计方案。这种方式能够在不改变服务器配置的情况下,让动态页面呈现出静态页面的效果,从而改善SEO表现。 #### 默认模块和操作 在某些情况下,如...
- 当一个URL请求找不到对应的路由或控制器时,服务器会返回404错误。 - 我们可以创建一个名为`404.html`的静态文件,放置在`public`目录下,以作为自定义的404错误页面。 - 如果想要更动态的404页面,可以在`...
ThinkPHP的去除URL中的index.php的.htaccess文件
ThinkPHP框架作为一款流行的PHP开发框架,其提供了灵活的路由管理系统,允许开发者自定义URL路由规则来简化和优化项目的URL结构,从而提升用户体验和搜索引擎优化。在本知识点分析中,将详细介绍ThinkPHP框架中实现...
路由缓存可以将配置的路由规则存储到缓存文件中,避免每次请求时解析路由配置。运行`php think optimize route`命令,ThinkPHP5会在运行时直接读取缓存,从而减少解析和匹配路由的时间。 3. **生成配置缓存文件**...
- **路由**:路由是 ThinkPHP5.0 的一大亮点,支持各种路由模式,如正则路由、静态路由、动态路由等。 #### 七、控制器与请求 - **控制器**:控制器用于处理用户的请求并返回响应,ThinkPHP5.0 提供了多种控制器...
1. 路由系统:ThinkPHP3.2.3支持自定义路由规则,可以根据不同的URL模式匹配到对应的控制器和方法。 2. MVC架构:分离业务逻辑、数据处理和视图展示,提升代码可读性和可维护性。 3. 模型层:提供数据操作接口,支持...
3.2.4版本的路由系统进一步优化,支持更灵活的URL映射,开发者可以通过定义路由规则,实现对URL的自由定制,提升用户体验。同时,动态路由和RESTful API的支持使得框架更加适用于构建现代化的Web服务。 三、模型与...
本教程会讲解如何在ThinkPHP框架下实现SEO友好的URL,优化页面元信息,以及如何处理动态内容和静态化。 通过《ThinkPHP详细高级教程》,你将能够全面掌握ThinkPHP框架的高级特性,并将其应用于实际项目开发中,提升...
总结来说,要在Nginx中支持ThinkPHP的URL Rewrite,你需要理解Nginx的配置语法,特别是`rewrite`规则和`location`块的用法,以及如何配置PHP处理。这个配置示例提供了一个基本的模板,但实际部署时,你可能还需要...
1. **简洁的路由规则**:ThinkPHP的URL路由机制使开发者能够轻松地定义和管理URL结构,提高应用程序的可维护性。 2. **强大的模型层**:提供了数据库操作的抽象,支持SQL语句的动态编译,提高了执行效率。 3. **灵活...
6. 路由系统:ThinkPHP提供了强大的URL路由功能,可以自定义路由规则,实现灵活的URL设计。 7. 模板引擎:ThinkPHP内置了模板引擎,支持变量替换、条件判断、循环等,方便生成动态页面。 8. 配置系统:允许开发者...
在实际应用中,JKBuildHtml还可以与ThinkPHP的其他特性结合使用,比如路由规则、中间件等,以实现更复杂的静态站点生成逻辑。例如,通过中间件可以在生成静态页面前进行权限验证,确保只有合法用户才能访问特定内容...
、表单处理 、表单验证 、Ajax操作 、分页操作 、CURD示例 、URL路由 、URL伪静态 、页面Trace 、运行时间显示 、数据查询 、数据缓存 、日志记录 、调试方法 、多模板支持 、多语言支持 、静态页面生成 、文件上传...