Php yii2url映射后缀
我在Yii2中有一些simular Url映射:Php yii2url映射后缀,php,yii2,url-mapping,Php,Yii2,Url Mapping,我在Yii2中有一些simular Url映射: 'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ ['pattern'=>'pages','route'=>'pages/index', 'suffix'=>'/'], ['pattern'=>
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
['pattern'=>'pages','route'=>'pages/index', 'suffix'=>'/'],
['pattern'=>'pages/<id:\d+>','route'=>'pages/single', 'suffix'=>'.html'],
]]
如果我从配置数组中删除后缀参数,则:
domain.com/pages/ - E404
domain.com/pages - works fine
domain.com/pages/321.html - E404
domain.com/pages/321 - works fine
是否可以将“后缀”设置为可选链接,例如“页面”和“页面/”将跟随一个方向?
谢谢。似乎无法通过url管理器中的规则配置实现这一点 请在Github上检查这些相关问题: 所以,选择一个更适合你的选项并使用它 需要尾随斜杠或
.html
-添加后缀
,否则保持原样
也适用于搜索引擎
domain.com/pages/
domain.com/pages
这是两个不同的页面,使用这两个页面将导致内容重复。谢谢,正如在《问题》中所说的,我将此逻辑移到了web服务器部分。Apache mod_rewrite示例:
RewriteRule^pages$/pages/[R=301,L]
domain.com/pages/
domain.com/pages