yii url如何隐藏.php后缀
本篇内容介绍了"yii url如何隐藏.php后缀"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
yii url隐藏.php后缀的方法:1、增加.htaccess文件;2、在config/web.php中的components数组中增加"'urlManager' => [...]";3、修改apache即可。
本文操作环境:Windows7系统、yii2.0版、Dell G3电脑。
yii url 怎么隐藏.php后缀?
Yii 框架开启 URL 美化,隐藏 index.php [ 2.0 版本 ]
url美化:
目的:将 http://localtest/yii/web/index.php?r=hello/index
美化成:http://localtest/yii/web/hello/index
这里我是用的wampserver新建了一个localtest站点(详情可点击这里点击这里),并将yii的basic文件夹重新命名为yii。
对比上面的两个地址,其实就是把index.php?r=隐藏。
这里分两步:
1、增加.htaccess文件
在web根目录下增加.htaccess文件,内容为:
RewriteEngine OnDirectoryIndex index.html index.php# 如果是一个目录或者文件,就访问目录或文件RewriteCond %{REQUEST_FILENAME} !-d#如果文件存在,就直接访问文件,不进行下面的RewriteRuleRewriteCond %{REQUEST_FILENAME} !-fRewriteRule . index.php
无法直接创建.htaccess,可以先创建一个txt文件,然后另存为…,保存为文件名为.htaccess,保存类型选择所有文件即可。
2、配置config/web.php 在config/web.php中的components数组中增加这一项:
'urlManager' => [ // //开启url美化 'enablePrettyUrl' => true, // //隐藏index.php 'showScriptName' => false, // //禁用严格匹配模式 'enableStrictParsing' => false, // //url后缀名称 // 'suffix'=>'.html', 'rules' => [ ],],
这时,可以将URL中的index.php?r=删除,如果出现404报错,可以查看服务器的配置,我用的是phpstudy中集成的apache 需要检查一下配置
conf\httpd.conf中,开启 apache 的 mod_rewrite 模块
去掉 LoadModule rewrite_module modules/mod_rewrite.so 前的"#"符号;
然后修改 apache 的 AllowOverride
将 AllowOverride None 修改为 AllowOverride All;
由于我是在conf\extra\httpd-vhosts.conf中配置了站点,所以需要同步去httpd-vhosts.conf中将对应站的 AllowOverride None 修改为 AllowOverride All;
至此,我就可以用 http://localtest/yii/web/hello/index
来访问 http://localtest/yii/web/index.php?r=hello/index
"yii url如何隐藏.php后缀"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!