ThinkPHP支持四種URL模式

ThinkPHP支持四種URL模式,可以通過設(shè)置URL_MODEL參數(shù)來定義,包括普通模式、PATHINFO、REWRITE和兼容模式。
1.普通模式:'URL_MODEL'=>0,
http://serverName/appName/?m=module&a=action&id=1

2.PATHINFO模式:'URL_MODEL'=>1,(系統(tǒng)默認(rèn)的模式)
默認(rèn)使用URL_PATHINFO模式,PATHINFO模式還包括普通模式和智能模式兩種:
PATHINFO普通模式:'PATH_MODEL'=>1,
該模式URL參數(shù)沒有順序,例如
http://serverName/appName/m/module/a/action/id/1
http://serverName/appName/a/action/id/1/m/module
PATHINFO智能模式:'PATH_MODEL'=>2, (系統(tǒng)默認(rèn)的模式)
該模式自動識別模塊和操作,例如
http://serverName/appName/module/action/id/1/
http://serverName/appName/module,action,id,1/
智能模式下,第一個參數(shù)會被解析成模塊名稱(或者路由名稱,下面會有描述),第二個參數(shù)會被解析成操作(在第一個參數(shù)不是路由名稱的前提下),后面的參數(shù)是顯式傳遞的,而且必須成對出現(xiàn),例如:
http://serverName/appName/module/action/year/2000/month/01/day/01/
其中參數(shù)之間的分割符由PATH_DEPR參數(shù)設(shè)置,默認(rèn)為"/",若設(shè)置PATH_DEPR為"^",則
http://serverName/appName/moduleactionid^1/
注意不要使用"@" 和"&"符號進(jìn)行分割,該符號有特殊用途,可能會導(dǎo)致其他的沖突。
如果想要簡化URL的形式可以通過路由功能(后面會有描述),在PATHINFO模式下,會把相關(guān)參數(shù)轉(zhuǎn)換成GET變量,以及并入REQUEST變量,因此不妨礙應(yīng)用里面的以上變量獲取。

3.REWRITE模式:'URL_MODEL'=>2,
該URL模式和PATHINFO模式功能一樣,除了可以不需要在URL里面寫入口文件,和可以定義.htaccess 文件外。
例如,我們可以增加如下的.htaccess內(nèi)容把所有操作都指向index.php文件。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

4.兼容模式:'URL_MODEL'=>3,
兼容模式是普通模式和PATHINFO模式的結(jié)合,并且可以讓應(yīng)用在需要的時候直接切換到PATHINFO模式而不需要更改模板和程序,基本上可以支持任何的運(yùn)行環(huán)境。
只需要傳入PATHINFO 兼容模式獲取變量VAR_PATHINFO,默認(rèn)值為s,例如
http://serverName/appName/?s=/module/action/id/1/
會執(zhí)行和上面的URL等效的操作,并且也可以支持參數(shù)分割符號的定義,例如在PATH_DEPR設(shè)置為"~"的情況下,下面的URL有效:
http://serverName/appName/?s=moduleactionid~1
兼容模式的情況下面模板文件不用做任何更改,保持和PATHINFO模式的寫法一樣,只需要在切換URL模式的時候清空下模板緩存目錄。
轉(zhuǎn)載自http://blog.csdn.net/u012382791/article/details/50845351

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容