鍍金池/ 問答/PHP  Linux/ 如何配置nginx去掉.php后綴,保留所有參數(shù)還能正常訪問?

如何配置nginx去掉.php后綴,保留所有參數(shù)還能正常訪問?

比如我有一個如下url
http://www.abc.com/test.php?i...

通過nginx配置后,去掉.php變成如下url也能正常訪問
http://www.abc.com/test?id=1&...

回答
編輯回答
刮刮樂

在server塊里加url重寫規(guī)則

server { 
    ......
    rewrite ^/test(.*)$ /test.php$1 last;
    ......
}

另外這里有一份nginx rewrite模塊的中文文檔,供你參考,最好通讀下
http://www.nginx.cn/doc/stand...

2017年8月5日 03:52
編輯回答
替身

我有一個思路,只要判斷url的結(jié)尾不是/才執(zhí)行“try_files $uri $uri.php$is_args$args;”這個配置,但是我對nginx語法和正則不太熟悉,不知道如何寫

2018年6月17日 19:54
編輯回答
嫑吢丕
location / {
        try_files $uri $uri/ @phprewrite;
}

location @phprewrite {
        if ($uri ~* \.php$) {
            break;
        }
        rewrite ^/(.+)$ /$1.php last;
}
2018年2月19日 09:39