Yii 带有漂亮 URL 的分页
Yii Paging with Pretty URLs
我实现了漂亮的 URL,它们在除分页之外的任何地方都可以使用。我一直在寻找解决方案,包括
但它似乎对我不起作用。
我的 .htaccess 中有这个
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/ [L]
然后我的 web.php 文件中有这些规则
''=>'site/index',
'site/<title:\w+>'=>'site/index'
'site/<title:\w+>/<page:\d+>'=>'site/index',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/<slug:\w+>' =>
'<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'site/find/<slug>' => 'site/find',
'/<slug>'=>'site/find',
'defaultRoute'=>'site/index'
分页应该在站点索引上工作。我可能缺少什么?
您的规则顺序不正确 - 您必须将更具体的规则(有模式的页面)放在更通用的规则(没有模式的页面)之前:
'' => 'site/index',
'site/<title:\w+>/<page:\d+>' => 'site/index',
'site/<title:\w+>' => 'site/index',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/<slug:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'site/find/<slug>' => 'site/find',
'<slug>' => 'site/find',
我实现了漂亮的 URL,它们在除分页之外的任何地方都可以使用。我一直在寻找解决方案,包括
我的 .htaccess 中有这个
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/ [L]
然后我的 web.php 文件中有这些规则
''=>'site/index',
'site/<title:\w+>'=>'site/index'
'site/<title:\w+>/<page:\d+>'=>'site/index',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/<slug:\w+>' =>
'<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'site/find/<slug>' => 'site/find',
'/<slug>'=>'site/find',
'defaultRoute'=>'site/index'
分页应该在站点索引上工作。我可能缺少什么?
您的规则顺序不正确 - 您必须将更具体的规则(有模式的页面)放在更通用的规则(没有模式的页面)之前:
'' => 'site/index',
'site/<title:\w+>/<page:\d+>' => 'site/index',
'site/<title:\w+>' => 'site/index',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>/<slug:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'site/find/<slug>' => 'site/find',
'<slug>' => 'site/find',