Thinkphp5 如何隱藏入口文件index.php(URL重寫)
大家好,我是Yangrl.
路由在框架中的作用打個(gè)比方的話,路由好比是WEB應(yīng)用的總調(diào)度室,對(duì)于訪問的URL地址,路由可以拒絕或者接受某個(gè)URL請(qǐng)求,并進(jìn)行分發(fā)調(diào)度,而且還有一個(gè)副作用是因?yàn)槁酚梢?guī)則可以隨意定義,因此可以讓你的URL請(qǐng)求地址更優(yōu)雅,因?yàn)椴粫?huì)暴露實(shí)際的URL地址,也就意味著更安全——《ThinkPHP5路由完全指南》
在之前,比如我們要訪問index 模塊下的 Index控制器 下的index方法,在vhost(虛擬主機(jī)/虛擬域名)下,是這樣的繁瑣的一行URL地址:
tp5.com/index.php/index/Index/index
不舒服,不優(yōu)雅(嘖嘖)對(duì)吧?所以我們學(xué)習(xí)路由,可以簡化,可以DIY,不僅舒服好看,還提升了安全性等方面。
開始學(xué)習(xí)TP5路由部分,先記下隱藏入口文件index.php也就是URL重寫的方法:
一.加載httpd.conf配置文件中mod_rewrite.so模塊:
如果是集成環(huán)境,大概是已經(jīng)開啟了,我用的phpStudy 2018,默認(rèn)開啟了,地址在
盤符:\phpStudy\PHPTutorial\Apache\conf->CTRL+F搜索:mod_rewrite.so->如果前面有#號(hào),刪掉就表示加載了該模塊。
二. 將AllowOverride None 的None改為 All:
這在phpStudy中也是默認(rèn)ALL的,搜索AllowOverride會(huì)發(fā)現(xiàn)不止一個(gè),那怎么選?改哪一個(gè)?你如果不確定,就都改!哈哈哈哈哈哈,其實(shí)我覺得就是第三步下面的directory中的allowoverride,見下圖。
三. 搜索DocumentRoot 將根目錄設(shè)置成你的入口文件所在目錄:
默認(rèn)是public目錄.
四.修改.htaccess文件:
把下面的內(nèi)容保存為.htaccess文件放到應(yīng)用入口文件的同級(jí)目錄下,就在public目錄。
(其實(shí)現(xiàn)在的TP5版本.htaccess文件就是下面的內(nèi)容,不用修改,我的是這樣。)
<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] </IfModule>
五.重啟Apache服務(wù)器:
ojbk.
環(huán)境:phpStudy 2018/ThinkPHP5.0.14/php7/Apache
(如果是其他服務(wù)器,可參閱官方手冊(cè) URL重寫)
以上這篇Thinkphp5 如何隱藏入口文件index.php(URL重寫)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
ThinkPHP分組下自定義標(biāo)簽庫實(shí)例
這篇文章主要介紹了ThinkPHP分組下自定義標(biāo)簽庫的方法,以實(shí)例形式講述了自定義標(biāo)簽庫的具體步驟,非常具有參考借鑒價(jià)值,需要的朋友可以參考下2014-11-11laravel實(shí)現(xiàn)按月或天或小時(shí)統(tǒng)計(jì)mysql數(shù)據(jù)的方法
今天小編就為大家分享一篇laravel實(shí)現(xiàn)按月或天或小時(shí)統(tǒng)計(jì)mysql數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10ThinkPHP5+Layui實(shí)現(xiàn)圖片上傳加預(yù)覽功能
這篇文章主要介紹了ThinkPHP5+Layui實(shí)現(xiàn)圖片上傳加預(yù)覽功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08基于Laravel 多個(gè)中間件的執(zhí)行順序詳解
今天小編就為大家分享一篇基于Laravel 多個(gè)中間件的執(zhí)行順序詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10微信支付開發(fā)動(dòng)態(tài)鏈接Native支付
本篇文章主要介紹微信支付下的基于動(dòng)態(tài)鏈接二維碼的Native支付實(shí)現(xiàn)流程,希望能給開發(fā)微信支付的小伙伴提供幫助2016-07-07phpcms實(shí)現(xiàn)驗(yàn)證碼替換及phpcms實(shí)現(xiàn)全站搜索功能教程詳解
這篇文章主要介紹了phpcms的驗(yàn)證碼替換 及 phpcms實(shí)現(xiàn)全站搜索功能,需要的朋友可以參考下2017-12-12Yii 實(shí)現(xiàn)數(shù)據(jù)加密和解密的示例代碼
這篇文章主要介紹了Yii 實(shí)現(xiàn)數(shù)據(jù)加密和解密的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01