我试图让Yii中2某些URL规则,所以我可以从控制器这样的访问操作:urlManager规则不工作的模块Yii2
controller/action/1 -> controller/action (with a parameter)
我尝试了一些规则,但他们将无法正常工作在我的模块(www.example.com/midend,www.example.com/backend)中。
所以,如果我想访问www.example.com/controller/action/1
它工作得很好,但如果我想访问www.example.com/midend/controller/action/1
它返回404
这些是模块的规则:
'<module:\w+>/<controller:\w+>/<action:\w+>/<id:\w+>' => '<module>/<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
'<module:\w+>/<controller:\w+>/<id:\w+>' => '<module>/<controller>',
这些都是没有规则模块:
'<controller:\w+>/<action:\w+>/<id:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<controller:\w+>/<id:\w+>' => '<controller>',
我已经尝试过用midend
更换<module:\w+>
。
为什么''而不是''? –
soju
@soju好吧,我从行动中复制了并用id替换。猜'\ d'更有意义。 –