php - yii2 url优化问题
天蓬老师
天蓬老师 2017-04-10 16:38:32
0
2
530

想要对Url进行优化,全部变为路径模式

如:http://xxx.com/topic/index?id=1&type=1
转变为:http://xxx.com/topic/index/id/1/type/1

可以通过配置rules:
'//id//type/'=>'/'

但是如果我传得参数不一样,比如再加一些参数,或者参数名非type和id,就无法匹配这个rule,难道要针对每一中参数都配置一个rule吗?

想通过正则把参数写为或的形式,但是没能成功,不知道这个正则的写法和规则是怎么样的,有没有官方文档说明啊?

还有一种方式是重载urlManager类中的方法,感觉稍微复杂了一点,还没尝试,请大家指点迷津,给个思路?谢谢了!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆 (2)
阿神

直接把 UrlManager中这个参数配置成true

/** * 路由的路径化 * * @var bool */ public $enablePrettyUrl = true;
    阿神

    第一:在配置文件加上 urlManager项,看代码:

    'urlManager'=>[ 'class' => 'yii\web\UrlManager', 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules'=>[ '//' =>'/', '/' => '/read', 's' => '/list', ], ],

    第二,在index.php同级目录下新建.htaccess文件,把下面的代码贴上:

    Options +FollowSymLinks IndexIgnore */* RewriteEngine on # if a directory or a file exists, use it directly RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # otherwise forward it to index.php RewriteRule . index.php

    原文地址:http://www.yiichina.com/tutorial/622

    或者参考这个:http://www.cnblogs.com/dcb3688/p/4607968.html

      最新下載
      更多>
      網站特效
      網站源碼
      網站素材
      前端模板
      關於我們 免責聲明 Sitemap
      PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!