對于LNMP這樣架構(gòu)的網(wǎng)站來說,一般都是基于php框架開發(fā),php框架一般都會講究優(yōu)雅鏈接,比如Laravel,CodeIgniter,ThinkPHP等都是支持這種鏈接模式的,在服務(wù)器配置上也叫作url重寫,目前框架大都采用單一入口的index.php然后基于MVC模式的話一般是/index.php/Model/function這種請求方式,所以如果能去掉index.php入口文件整個url就顯得簡潔美觀,和Python、Java等開發(fā)的網(wǎng)站url模式統(tǒng)一,Apache和nginx都支持這種url的模式,下面說一下nginx配置的方式
首先進(jìn)入nginx的安裝目錄,上篇文章中說了在配置文件nginx.conf中,有server {}這樣的代碼段用來指定一個站點(diǎn)的配置,這下面有很多其他的配置,我們在配置文件或者include的配置文件中對應(yīng)的server {}代碼段中添加如下代碼來實(shí)現(xiàn)url重寫:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
如果原來location / {}這段代碼已經(jīng)存在的話,那么就直接在里面追加圖中那一行代碼即可,因?yàn)橥粋€路由的配置一般放到一塊;保存之后,重啟nginx服務(wù)器即可生效,如果nginx被添加到服務(wù)的話,可以使用/etc/init.d/nginx restart進(jìn)行重啟,重啟之后url就可以得到美化了
網(wǎng)上還有另外一種url重寫的方式,還是在同樣位置添加如下代碼來解決:
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
保存之后同樣重啟nginx生效,也可以實(shí)現(xiàn)url美化的效果,不過根據(jù)網(wǎng)上有些文章的說法,推薦第一種方式進(jìn)行url的美化
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。