使用 Yii2 在 pretty URL 中隐藏控制器和动作

Hide controller and action in pretty URL with Yii2

我需要使用

中的 URL 管理器在 Yii2 中更改 URL
http://www.domain.com/index.php?r=tamil-article/articles&categ=Innovation&id=44

http://www.domain.com/44/Innovation.html

如何做到这一点?

您可以通过将 UrlManager 配置为使用 prettyUrls 来解决此问题。

之后,您可以将自定义 url 规则添加到规则数组(在 config/main.php 中):

'urlManager'   => [
    'class'           => 'yii\web\UrlManager',
    // Disable index.php
    'showScriptName'  => false,
    // Add the .html suffix 
    'suffix' => '.html',
    // Disable r= routes
    'enablePrettyUrl' => true,
    'rules'           => [
        '<id:\d+>/<categ:\w+>' => 'tamil-article/articles',
    ],
],