除了定义 URL 规则外,你还可以将规则定义为配置数组。 每个配置数组用来配置一个单独的 URL 规则对象。如果你需要配置 URL 规则的其它参数时可以这样用。 例如:
[
'components' => [
'urlManager' => [
'enablePrettyUrl' => true,
// ...
'suffix' => '.html',
'rules' => [
// ...
[
'pattern' => 'posts',
'route' => 'post/index',
'suffix' => '.json',
],
],
],
],
]
下面的例子显示了一个URL规范器的配置:
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'enableStrictParsing' => true,
'suffix' => '.html',
'normalizer' => [
'class' => 'yii\web\UrlNormalizer',
// 调试时使用临时跳转代替永久跳转
'action' => UrlNormalizer::ACTION_REDIRECT_TEMPORARY,
],
'rules' => [
// ...其它规则...
[
'pattern' => 'posts',
'route' => 'post/index',
'suffix' => '/',
'normalizer' => false, // 针对此规则关闭规范器
],
[
'pattern' => 'tags',
'route' => 'tag/index',
'normalizer' => [
// 针对此规则不合并连续的斜线
'collapseSlashes' => false,
],
],
],
]