我正在尝试设置 CakePHP 重定向路由,但我被卡住了。到目前为止,阅读这本书并没有帮助。
我想将 URL 重定向/mysite/xyz
到/mysite/en/xyz
(包括语言参数)
最终 URL 的路由/mysite/en/xyz
, 是这样设置的,并且工作正常:
Router::connect(
'/:language/:category/*',
array('controller' => 'content', 'action' => 'index'),
array(
'named' => array('language', 'category'),
'language' => 'en|de',
'category' => 'abc|def|xyz',
'pass' => array('language', 'category')
)
);
重定向路由设置如下:
Router::redirect(
'/:category/*',
array('controller' => 'content', 'action' => 'index', 'language' => 'en'),
array(
'named' => array('category'),
'category' => 'abc|def|xyz',
'pass' => array('language'),
'persist' => array('category')
)
);
但是,如果我现在访问 URL /mysite/xyz
,我将被重定向到/mysite/mysite/en/xyz/en
- 请注意参数的重复。
如何正确设置?