thinkphp在低版本Nginx 下支持PATHINFO的方法分享
最近在用thinkphp做一個項目,基本完成后部署到nginx服務(wù)器上才發(fā)覺nginx是不支持pathinfo的那么我們?nèi)绾蝸硖幚砟亍?/p>
Nginx環(huán)境
在Nginx低版本中,是不支持PATHINFO的,但是可以通過在Nginx.conf(在/usr/local/nginx/conf/nginx.conf或者通過find / | grep nginx.conf來查找位置)中配置轉(zhuǎn)發(fā)規(guī)則實現(xiàn):在nginx配置文件中添加:
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
其實內(nèi)部是轉(zhuǎn)發(fā)到了ThinkPHP提供的兼容模式的URL,利用這種方式,可以解決其他不支持PATHINFO的WEB服務(wù)器環(huán)境。
如果你的ThinkPHP安裝在二級目錄,Nginx的偽靜態(tài)方法設(shè)置如下,其中youdomain是所在的目錄名稱。
location /youdomain/ {
if (!-e $request_filename){
rewrite ^/youdomain/(.*)$ /youdomain/index.php?s=$1 last;
}
}
如:
location /thinkphp/ {
if (!-e $request_filename){
rewrite ^/thinkphp/(.*)$ /thinkphp/index.php?s=$1 last;
}
}
語法:rewrite regex replacement flag (last 相當于apache里面的[L]標記,表示rewrite。)
- 解決nginx不支持thinkphp中pathinfo的問題
- Nginx下配置pathinfo及ThinkPHP的URL Rewrite模式支持
- Nginx配置PATHINFO隱藏thinkphp index.php
- Ubuntu下Nginx配置ThinkPHP的Pathinfo和URl Rewrite模式
- nginx+thinkphp下解決不支持pathinfo模式
- lnmp環(huán)境中如何為nginx開啟pathinfo
- nginx中配置pathinfo模式示例
- nginx支持codeigniter的pathinfo模式url重寫配置寫法示例
- Nginx隱藏index.php和Pathinfo模式配置例子
- 在nginx中配置pathinfo模式支持thinkphp的URL重寫
- 讓Nginx支持ThinkPHP的URL重寫和PATHINFO的方法分享
- nginx配置支持php的pathinfo模式配置方法
相關(guān)文章
php中記錄用戶訪問過的產(chǎn)品,在cookie記錄產(chǎn)品id,id取得產(chǎn)品信息
php中記錄用戶訪問過的產(chǎn)品,在cookie記錄產(chǎn)品id,id取得產(chǎn)品信息,需要的朋友可以參考下。2011-05-05
PHP array_flip() 刪除重復(fù)數(shù)組元素專用函數(shù)
array_flip() 返回一個反轉(zhuǎn)后的 array,例如 trans 中的鍵名變成了值,而 trans 中的值成了鍵名。2010-05-05
PHP微信網(wǎng)頁授權(quán)的配置文件操作分析
這篇文章主要介紹了PHP微信網(wǎng)頁授權(quán)的配置文件操作,結(jié)合實例形式分析了php微信授權(quán)配置文件的相關(guān)功能、用法及操作注意事項,需要的朋友可以參考下2019-05-05
gearman中worker常駐后臺,導(dǎo)致MySQL server has gone away的解決方法
這篇文章主要介紹了gearman中worker常駐后臺,導(dǎo)致MySQL server has gone away的解決方法,較為詳細的分析了造成MySQL server has gone away的原因與相關(guān)的解決方法,需要的朋友可以參考下2020-02-02

