小編給大家分享一下yii中url如何隱藏index.php,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)公司長(zhǎng)期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為永興企業(yè)提供專業(yè)的網(wǎng)站制作、網(wǎng)站設(shè)計(jì),永興網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
yii url隱藏index.php的方法:首先在web根目錄下增加“.htaccess”文件;然后修改配置“config/web.php”;最后將“AllowOverride None”修改為“AllowOverride All;”即可。
Yii 框架開啟 URL 美化,隱藏 index.php [ 2.0 版本 ]
url美化
目的:將 http://localtest/yii/web/index.php?r=hello/index
美化成:http://localtest/yii/web/hello/index
這里我是用的wampserver新建了一個(gè)localtest站點(diǎn)(詳情可點(diǎn)擊這里點(diǎn)擊這里),并將yii的basic文件夾重新命名為yii。
對(duì)比上面的兩個(gè)地址,其實(shí)就是把index.php?r=隱藏。
這里分兩步:
1、增加.htaccess文件
在web根目錄下增加.htaccess文件,內(nèi)容為:
RewriteEngine On DirectoryIndex index.html index.php # 如果是一個(gè)目錄或者文件,就訪問(wèn)目錄或文件 RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接訪問(wèn)文件,不進(jìn)行下面的RewriteRule RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
無(wú)法直接創(chuàng)建.htaccess,可以先創(chuàng)建一個(gè)txt文件,然后另存為…,保存為文件名為.htaccess,保存類型選擇所有文件即可。
2、配置config/web.php 在config/web.php中的components數(shù)組中增加這一項(xiàng):
'urlManager' => [ // //開啟url美化 'enablePrettyUrl' => true, // //隱藏index.php 'showScriptName' => false, // //禁用嚴(yán)格匹配模式 'enableStrictParsing' => false, // //url后綴名稱 // 'suffix'=>'.html', 'rules' => [ ], ],
這時(shí),可以將URL中的index.php?r=刪除,如果出現(xiàn)404報(bào)錯(cuò),可以查看服務(wù)器的配置,我用的是phpstudy中集成的apache 需要檢查一下配置
conf\httpd.conf中,開啟 apache 的 mod_rewrite 模塊
去掉 LoadModule rewrite_module modules/mod_rewrite.so 前的“#”符號(hào);
然后修改 apache 的 AllowOverride
將 AllowOverride None 修改為 AllowOverride All;
由于我是在conf\extra\httpd-vhosts.conf中配置了站點(diǎn),所以需要同步去httpd-vhosts.conf中將對(duì)應(yīng)站的 AllowOverride None 修改為 AllowOverride All;
看完了這篇文章,相信你對(duì)“yii中url如何隱藏index.php”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!