Yii2 模块的Url规则不起作用

Yii2 模块的Url规则不起作用,yii2,Yii2,yii2配置的这一部分有点棘手,因此如果有人告诉我正确的方法以及我所尝试的错误原因,我将不胜感激 我有一个名为Admin的模块,这个模块有几个控制器,当然它采用视图结构的主布局,因此布局中生成的所有链接也可以在模块中使用,所有这些看起来都不错,但有一点,如果链接在模块中呈现,所有这些链路中都有模块路由。。我需要将它们路由到模块外部 我需要在模块外部路由的所有链接都具有以下模式: / 虽然模块具有此模式: admin/ 到目前为止,我已尝试在配置中添加Url规则,如下所示: 'rules'=>

yii2
配置的这一部分有点棘手,因此如果有人告诉我正确的方法以及我所尝试的错误原因,我将不胜感激

我有一个名为
Admin
的模块,这个模块有几个控制器,当然它采用视图结构的主布局,因此布局中生成的所有链接也可以在模块中使用,所有这些看起来都不错,但有一点,如果链接在模块中呈现,所有这些链路中都有模块路由。。我需要将它们路由到模块外部

我需要在模块外部路由的所有链接都具有以下模式:
/
虽然模块具有此模式:
admin/

到目前为止,我已尝试在配置中添加
Url
规则,如下所示:

'rules'=>[
    '<module:\w+>/<controller:\w+>/<action:\w+>'=>'<module>/<controller>/<action>',
    //Also tried this: admin/<controller\w+>/<action:\w+>
]
“规则”=>[
'//'=>'//',
//我也试过这个:admin//
]

但所有链接仍以相同的方式生成。。当链接在模块中生成时,它们都有这样的模式:
admin/
,而它们应该是这样的:
@root/

假设您仍然有默认的url规则,您的url应该以斜杠开头,例如
/site/about
,而不是
site/about
。从以下文件:

路线可以是绝对的,也可以是相对的。绝对路由有一个前导斜杠(例如
/site/index
),而相对路由没有前导斜杠(例如
site/index
index

如果路由没有前导斜杠(例如,
站点/索引
),则它被视为相对于当前模块的路由,并将以模块的
唯一ID
作为前缀


个人项目中的自定义规则示例:

'urlManager' => [
            'class' => 'yii\web\UrlManager',
            'showScriptName' => false,
            'enablePrettyUrl' => true,

            'rules' => array(
                'register' => 'user/registration/register',
                'login' => 'user/security/login',
                'logout' => 'user/security/logout',
                'home' => 'site/index',

                'support' => 'contact/submit',
                'faq' => 'site/faq',

                '<controller:\w+>/<id:\d+>' => '<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
                '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
            ),
        ],
'urlManager'=>[
'class'=>'yii\web\UrlManager',
'showScriptName'=>false,
“enablePrettyUrl”=>true,
'规则'=>数组(
'注册'=>'用户/注册/注册',
'login'=>'user/security/login',
“注销”=>“用户/安全/注销”,
“主页”=>“站点/索引”,
“支持”=>“联系/提交”,
“常见问题”=>“站点/常见问题”,
“/”=>“/视图”,
'//' => '/',
'/' => '/',
),
],

这将转到应用程序中的主配置文件。

尝试使用创建absulute Url<代码>Yii::$app->request->createAbsoluteUrl('module/controller/action')@DoubleH这会使php代码比现在大很多,在一个navbarDoes中有10多个链接可以用于Yii2?这里没有提到双斜杠。对不起,我错了。这真的是yii1的东西。从未搜索过有关此更改的文档,而且它也使用了两个斜杠。因此,我删除了我的评论,以避免传播错误信息。我已经做了此更改,看起来它是有效的,尽管我需要完全理解规则