URL规则是yii \ web \ UrlRule的一个实例。启用漂亮的URL格式后,urlManager组件将使用在rules属性中声明的URL规则。
为了解析请求,URL管理器按照声明的顺序获取规则,并查找第一个规则。
步骤1-修改config / web.php文件中的urlManager组件。
'urlManager' => [ 'showScriptName' => false, 'enablePrettyUrl' => true, 'rules' => [ 'about' => 'site/about', ] ],
步骤2-转到Web浏览器,网址为http:// localhost:8080 / about,您将看到about页面。
URL规则可以与此模式中的查询参数相关联-
<ParamName:RegExp>,其中-
- ParamName-参数名称
- RegExp-用于匹配参数值的可选正则表达式
假设我们声明了以下URL规则-
[ 'articles/<year:\d{4}>/<category>' => 'article/index', 'articles' => 'article/index', 'article/<id:\d+>' => 'article/view', ]
当规则用于解析时–
- /index.php/articles被解析为article / index
- /index.php/articles/2014/php被解析为article / index
- /index.php/article/100被解析为article / view
- /index.php/articles/php解析为article / php
使用规则创建URL时–
- Url :: to([[‘article / index’])创建/index.php/articles
- Url :: to([[‘article / index’,’year’=> 2014,’category’=>’php’])创建/index.php/articles/2014/php
- Url :: to([[‘article / view’,’id’=> 100])创建/index.php/article/100
- url :: to([[‘article / view’,’id’=> 100,’source’=>’ad’])创建/index.php/article/100?source=ad
- Url :: to([[‘article / index’,’category’=>’php’])创建/index.php/article/index?category=php
要将后缀添加到URL,应配置yii \ web \ UrlManager :: $ suffix属性。
第3步-修改urlComponent在配置/ web.php文件。
'urlManager' => [ 'showScriptName' => false, 'enablePrettyUrl' => true, 'enableStrictParsing' => true, 'suffix' => '.html' ],
步骤4-在网络浏览器的地址栏中输入地址http:// localhost:8080 / site / contact.html,您将在屏幕上看到以下内容。注意html后缀。
作者:terry,如若转载,请注明出处:https://www.web176.com/yii/513.html