Nginx服務(wù)器如何設(shè)置url鏈接
對(duì)于LNMP這樣架構(gòu)的網(wǎng)站來(lái)說(shuō),一般都是基于php框架開(kāi)發(fā),php框架一般都會(huì)講究?jī)?yōu)雅鏈接,比如Laravel,CodeIgniter,ThinkPHP等都是支持這種鏈接模式的,在服務(wù)器配置上也叫作url重寫(xiě),目前框架大都采用單一入口的index.php然后基于MVC模式的話(huà)一般是/index.php/Model/function這種請(qǐng)求方式,所以如果能去掉index.php入口文件整個(gè)url就顯得簡(jiǎn)潔美觀(guān),和Python、Java等開(kāi)發(fā)的網(wǎng)站url模式統(tǒng)一,Apache和nginx都支持這種url的模式,下面說(shuō)一下nginx配置的方式
首先進(jìn)入nginx的安裝目錄,上篇文章中說(shuō)了在配置文件nginx.conf中,有server {}這樣的代碼段用來(lái)指定一個(gè)站點(diǎn)的配置,這下面有很多其他的配置,我們?cè)谂渲梦募蛘遡nclude的配置文件中對(duì)應(yīng)的server {}代碼段中添加如下代碼來(lái)實(shí)現(xiàn)url重寫(xiě):
location / {
try_files $uri $uri/ /index.php?$query_string;
}

如果原來(lái)location / {}這段代碼已經(jīng)存在的話(huà),那么就直接在里面追加圖中那一行代碼即可,因?yàn)橥粋€(gè)路由的配置一般放到一塊;保存之后,重啟nginx服務(wù)器即可生效,如果nginx被添加到服務(wù)的話(huà),可以使用/etc/init.d/nginx restart進(jìn)行重啟,重啟之后url就可以得到美化了
網(wǎng)上還有另外一種url重寫(xiě)的方式,還是在同樣位置添加如下代碼來(lái)解決:
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
保存之后同樣重啟nginx生效,也可以實(shí)現(xiàn)url美化的效果,不過(guò)根據(jù)網(wǎng)上有些文章的說(shuō)法,推薦第一種方式進(jìn)行url的美化
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持本站。
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信