在nginx中配置pathinfo模式支持thinkphp的URL重寫
最近一個(gè)項(xiàng)目中使用了ThinkPHP做為開(kāi)發(fā)框架,URL上我們使用了PATHINFO模式,但是Nginx默認(rèn)是不支持PATHINFO的,需要進(jìn)行手動(dòng)配置才可以,于是我們按照了以下方法進(jìn)行了Nginx的PATHINFO支持配置:
修改nginx.conf,找到server中的 location ~ .php${},修改為location ~ .php {},并在其中增加以下內(nèi)容:
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
不過(guò)無(wú)論我們?nèi)绾螠y(cè)試,都發(fā)現(xiàn)PATHINFO模式總是不能正確運(yùn)行,就算運(yùn)行后,{:U}方法也總是出錯(cuò),打印$_SERVER后發(fā)現(xiàn)PHP_SELF總是不對(duì)。
但是依然PATHINFO不能正確正常工作,于是我們確定是ThinkPHP的配置問(wèn)題,發(fā)現(xiàn)其實(shí)是ThinkPHP的_PHP_FILE的問(wèn)題,在入口文件index.php中加入配置define('_PHP_FILE_',$_SERVER['SCRIPT_NAME']);,問(wèn)題解決。
如果$_SERVER['SCRIPT_NAME'] 路徑也不對(duì),請(qǐng)先替換為正確的文件路徑。
- Nginx隱藏index.php和Pathinfo模式配置例子
- nginx中配置pathinfo模式示例
- nginx支持codeigniter的pathinfo模式url重寫配置寫法示例
- nginx+thinkphp下解決不支持pathinfo模式
- Ubuntu下Nginx配置ThinkPHP的Pathinfo和URl Rewrite模式
- Nginx下配置pathinfo及ThinkPHP的URL Rewrite模式支持
- nginx配置支持php的pathinfo模式配置方法
- Nginx下實(shí)現(xiàn)pathinfo及ThinkPHP的URL模式
- Nginx如何實(shí)現(xiàn)pathinfo模式的方法詳解
相關(guān)文章
docker nginx實(shí)現(xiàn)一個(gè)主機(jī)部署多個(gè)站點(diǎn)操作
這篇文章主要介紹了docker nginx實(shí)現(xiàn)一個(gè)主機(jī)部署多個(gè)站點(diǎn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11Nginx 過(guò)濾靜態(tài)資源文件的訪問(wèn)日志的實(shí)現(xiàn)
這篇文章主要介紹了Nginx 過(guò)濾靜態(tài)資源文件的訪問(wèn)日志的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10教你利用Nginx 服務(wù)搭建子域環(huán)境提升二維地圖加載性能的步驟
這篇文章主要介紹了利用 Nginx 服務(wù)搭建子域環(huán)境提升二維地圖加載性能,本文分步驟通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-09-09使用nginx正向代理實(shí)現(xiàn)內(nèi)網(wǎng)域名轉(zhuǎn)發(fā)過(guò)程解析
這篇文章主要介紹了使用nginx正向代理實(shí)現(xiàn)內(nèi)網(wǎng)域名轉(zhuǎn)發(fā)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08nginx配置ssl實(shí)現(xiàn)https訪問(wèn)(小白文)
安全起見(jiàn),需要將之前的http接口訪問(wèn)變成https訪問(wèn),所以需要配置SSL證書,本文主要介紹了nginx配置ssl實(shí)現(xiàn)https訪問(wèn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09Nginx配合Apache或Tomcat的動(dòng)靜分離基本配置實(shí)例
這篇文章主要介紹了Nginx配合Apache或Tomcat的動(dòng)靜分離基本配置實(shí)例,實(shí)際上Nginx專門負(fù)責(zé)靜態(tài)和反向代理是主流服務(wù)器配置方案,需要的朋友可以參考下2016-01-01Nginx配置之實(shí)現(xiàn)多臺(tái)服務(wù)器負(fù)載均衡
這篇文章主要介紹了Nginx配置之實(shí)現(xiàn)多臺(tái)服務(wù)器負(fù)載均衡,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07詳解通過(guò)Nginx部署Django(基于ubuntu)
這篇文章主要介紹了詳解通過(guò)Nginx部署Django(基于ubuntu),Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比較常見(jiàn)的一種方式,有興趣的可以了解一下。2017-01-01通過(guò)Nginx定義Header頭信息的實(shí)現(xiàn)步驟
本文主要介紹了通過(guò)Nginx定義Header頭信息的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04