无法使 UrlManager 规则在 Yii2 中工作

Can't make the UrlManager Rules work in Yii2

我知道我无法提供的许多变数可能是问题所在,但我仍在询问是否有人遇到过这个问题并且可以提供帮助。

这是我在组件中的 UrlManager 配置

    'urlManager' => [
        'class' => 'yii\web\UrlManager',
        'enablePrettyUrl' => false,
        'showScriptName' => true,
        'rules' => [
            '' => 'site/index',
            'member' => 'site/login',
        ],
    ],

这个 url 有效:

http://exampler.com/web/index.php?r=site/login

这个urlreturns一个404

http://example.com/web/index.php?r=member

**注意:** 我的服务器上没有任何凌乱的 Nginx 或 Apache 规则,就像 this guy 那样。我的规则似乎完全被忽略了,无论我在里面写什么。

如果将 $enablePrettyUrl 设置为 false

$rules 将被忽略。来自 $rules 文档:

The rules for creating and parsing URLs when $enablePrettyUrl is true. This property is used only if $enablePrettyUrl is true.

https://www.yiiframework.com/doc/api/2.0/yii-web-urlmanager#$rules-detail