假设我的应用程序路径是:-
http://www.example.com/index.php?r=dashboard/event/view
我创建了一个新控制器,要在其上将URL更改为漂亮URL。
新控制器的默认URL
http://www.example.com/index.php?r=newcontroller/view?id=23&name=urlpretty
我想将上述URL设为
之类的漂亮URLhttp://www.example.com/23/sampleprettyurl
但是我不想将完整的应用程序URL路径更改为漂亮的URL。我的其他控制器路径/ URL应该可以正常工作。
预先感谢
答案 0 :(得分:0)
我认为这不是可行的,控制器名称必须在URL中,获取配置模块名称所需的内容,然后是urlManager:
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'enableStrictParsing' => false,
'rules' => [
'newcontroller/<id>/<name>' => 'moduleAlias/newcontroller',
],
],
然后在操作中,您可以通过Yii::$app->request->get('id');
答案 1 :(得分:-1)
在配置web.php中
component => [
/* pretty url */
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
],
],
/* ./pretty url */
]
/ p上的和.htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]