yii2 url美化 细节注意事项

找到backend/config/main.php文件,’components'=>[] 中添加如下代码:

 



框架:Yii2.0 advanced框架


以修改后台文件为例,找到backend/config/main.php文件,’components'=>[] 中添加如下代码:


1 'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'enableStrictParsing' => false,
'suffix' => '.html',
'rules' => [
'/'=>'/',
],
],


修改前:index.php?r=site/index
修改后:index.php/site/index


接下来我们逐条解释:
'enablePrettyUrl' => true, //是否开启美化效果


'enableStrictParsing' => false, //是否开启严格解析路由
什么意思呢?假设我们在开启了路由美化的功能(enablePrettyUrl设置为true),enableStrictParsing设置为false的情况下,我们直接访问/index.php/site/index肯定是没有问题的。但是如果我们直接访问/index.php?r=site/index呢?发现页面展示的效果是/site/index(实际上这里展示的默认的路由页面),并非是博客列表页面。如果我们把enableStrictParsing参数设置为true你会发现页面直接抛出404。因为这货设置为true之后,会匹配rules选项中设定的至少一个规则,那我们这里先设置一个路由,不然没法继续了。
'showScriptName' => false, //是否或略脚本名index.php
而我们可以看到,现在的index.php还是没有在url中消失,是因为我们还缺少一个.htaccess文件


我们只要在与入口文件index.php同级的目录下,保存一个名为.htaccess文件,就可以隐藏index.php文件啦!

这个文件不能少  apache配制,nginx的在niginx的配制文件里配
.htaccess文件内容:


Options +FollowSymlinks
IndexIgnore */*
RewriteEngine On

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php
最后测试OK了!

还不知道的加我QQ 156356969

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值