thinkphp3.2路由美化,url简化

thinkphp的路由功能很实用也很强大,可以简化url,有强大的正则匹配,可以做成任何想要的url样式。

在前台的config.php配置文件中:

1.首先开启路由


1

‘URL_ROUTER_ON‘   => true,

2.配置路由规则了,使用URL_ROUTE_RULES参数进行配置,格式为数组。


1

2

3

4

5

‘URL_ROUTE_RULES‘=>array(    

    ‘news/:year/:month/:day‘ => array(‘News/archive‘‘status=1‘),    

    ‘news/:id‘               => ‘News/read‘,

    ‘/^new\/(\d{4})\/(\d{2})$/‘ => ‘News/achive?year=:1&month=:2‘,

),

例:

最常见的使用方法:

例如:‘news/:id‘  => ‘News/read‘,

在在地址栏中输入 域名/news/123.html   其实访问的是 域名/news/read/id/123.html

还有经常用到的对分页url的处理:

当有分页时:


1

‘/^list\/(.*\d)_(.*\d)$/‘  =>      ‘article/list?id=:1&p=:2‘,

最终效果:

地址栏的地址是  域名/list/123_2.html

实际访问的地址是:域名/article/list?id=123/p=2

没有分页时匹配的是这个规则:


1

‘list/:id\d‘  =>       ‘article/list‘,

地址栏的地址是  域名/list/123.html

实际访问的地址是:域名/article/list/id/123.html

但是这个没有分页的路由必须放在下面,或者直接用上面的那个,只不过第一页的地址要带个 "_1"。

具体使用方法详见3.2手册“路由”章节。

时间: 2024-10-14 18:47:51

thinkphp3.2路由美化,url简化的相关文章

关于IIS上Yii2的Url路由美化

Yii2默认的路由是酱紫的 http://.../admin/web/index.php?r=site/login 心中理想的美化Url应该这样  http://.../admin/web/site/login 在指定模块的web目录新建web.config,复制粘贴下面代码就OK了! <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer>

yii2项目实战-路由美化以及如何正确的生成链接

yii2项目实战-路由美化以及如何正确的生成链接 更新于 2016年12月17日 by 白狼 被浏览了 705 次 美化路由 何为美化路由呢?美化嘛,无外乎就是给路由化化妆,让她好看点.我虽没化过妆,那好歹也是见过描描眉的.下面我们就来看看如何给你的路由添加添加点"颜色"的. yii的路由美化工作,全权由urlManager组件负责.默认情况下,该组件并没有开启. 我们在配置文件backend\config\main.php中简单配置下该组件 'urlManager' => [

thinkphp URL规则、URL伪静态、URL路由、URL重写、URL生成(十五)

原文:thinkphp URL规则.URL伪静态.URL路由.URL重写.URL生成(十五) 本章节:详细介绍thinkphp URL规则.URL伪静态.URL路由.URL重写.URL生成 一.URL规则 1.默认是区分大小写的 2.如果我们不想区分大小写可以改配置文件 'URL_CASE_INSENSITIVE'=>true,//url不区分大小写 *模块命名太长的情况: A.如果模块名为 UserGroupAction,复杂模块(一般是IndexAction) 那么url找模块就必要要写成

Laravel 深入理解路由和URL生成

在模板中我们一般不会直接写死url,而是用url助手生成url,本文介绍一下url助手的使用以及遇到的一些比较头疼的问题. 首先,我们创建了一个路由: Route::get('articles',['uses'=>'[email protected]','as'=>'articles.index']); 假设我们的项目部署在域名根目录,那么可以通过下面的url访问: http://localhost/articles 现在,我们在模板中生成链接,有几种方式: 简单模式 <a href=&

ThinkPHP的url简化

TP的url请求简化 下面是apache的配置过程,可以参考: 1.       httpd.conf 配置文件中加载了mod_rewrite.so模块 2.       AllowOverride None 将None改为All 3.       确保URL_MODEL设置为2(在config.php里修改) 4.       把下面内容保存为.htaccess文件放到入口文件的同级目录下 <IfModule mod_rewrite.c> RewriteEngine on RewriteCo

MVC通过路由实现URL重写

public static class WebApiConfig { public static void Register(HttpConfiguration config) { config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}.html/{id}", defaults: new { id = RouteParameter.Option

以路由控制URL

至此为止,我们一直在使用ASP.NET MVC新项目随带的默认路由配置.现在我们将深入探讨路由系统,并学习如何创建应用程序的自定义路由,以确保URL既是用户友好又是搜索引擎可访问的. 路由的全部内容都是关于URL以及如何将URL作为应用程序的外部输入的.当使用其他开发工具,如PHP.Web Form或是经典的ASP时,URL通常对应于磁盘上的物理文件.一个http://example.com/Products.aspx这样的URL会导致执行负责处理该请求的名为Products.aspx的文件.

Django 的路由层URL

URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码. 其实你运行这个django项目首先进入的就是urls中  由urls来决定你下一步的走向 urlpatterns = [ path(正则表达式, views视图函数,参数,别名), ] 参数说明: 一个正则表达式字符串 一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串

根据指定路由生成URL |Generating a URL from a Specific Route | 在视图中生成输出URL|高级路由特性

后面Length=5 是怎么出现的?