nginx支持.htaccess文件實(shí)現(xiàn)偽靜態(tài)的方法分享
在Google上搜索的資料很多人都說(shuō)nginx目前不支持.htaccess文件,我按照nginx的規(guī)則試驗(yàn)了一下,結(jié)果發(fā)現(xiàn)nginx是完全支持.htaccess文件的!
方法如下:
1. 在需要使用.htaccess文件的目錄下新建一個(gè).htaccess文件,
如本人的一個(gè)Discuz論壇目錄:
2. 在里面輸入規(guī)則,我這里輸入Discuz的偽靜態(tài)規(guī)則:
# nginx rewrite rule
rewrite ^(.*)/archiver/((fid|tid)-[w-]+.html)$ $1/archiver/index.php?$2 last;
rewrite ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3 last;
rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3 last;
rewrite ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3 last;
rewrite ^(.*)/tag-(.+).html$ $1/tag.php?name=$2 last;
# end nginx rewrite rule
wq保存退出。
3. 修改nginx配置文件:
vim /etc/nginx/nginx.conf
4. 在需要添加偽靜態(tài)的虛擬主機(jī)的server{}中引入.htaccess文件,如圖所示:
include /var/www/html/168pc/bbs/.htaccess;(把這個(gè)改成你.htaccess文件的具體位置)
wq保存退出。
5. 重新加載nginx配置文件:
重新打開網(wǎng)頁(yè)看看,如果偽靜態(tài)正常就證明你的rewrite rule語(yǔ)法是正確的。
正常,完畢!
補(bǔ)充:偶在網(wǎng)上發(fā)現(xiàn)了個(gè)可以在線將Apache Rewrite偽靜態(tài)規(guī)則自動(dòng)轉(zhuǎn)換為Nginx Rewrite網(wǎng)頁(yè)。大家可以試試看。
http://www.anilcetin.com/convert-apache-htaccess-to-nginx/
此地址里面的內(nèi)容包含可以完成上面說(shuō)的略做修改的功能。就是把.htaccess中的規(guī)則自動(dòng)轉(zhuǎn)換成nginx下面可用的規(guī)則。
總結(jié):.
htaccess文件本來(lái)是apache專用的分布式配置文件,提供了針對(duì)每個(gè)目錄改變配置的方法,即在一個(gè)特定的目錄中放置一個(gè)包含指令的文件,其中的指令作用于此目錄及其所有子目錄。其實(shí)修改一下,nginx也可使用.htaccess文件實(shí)現(xiàn)多種功能。實(shí)現(xiàn)偽靜態(tài)只是.htaccess的其中一個(gè)用途,.htaccess還可以做很多的用途,如過(guò)濾訪問(wèn)IP,設(shè)置web目錄訪問(wèn)權(quán)限、密碼等。
- 使用.htaccess設(shè)置圖片防盜鏈的詳細(xì)方法
- Apache使用 .htaccess 來(lái)實(shí)現(xiàn)強(qiáng)制https訪問(wèn)的方法
- 讓Apache 2支持.htaccess并實(shí)現(xiàn)目錄加密的方法
- APACHE支持.htaccess偽靜重寫出錯(cuò) No input file specified的解決方案
- Apache使用.htaccess 屏蔽惡意 User Agent(防蜘蛛)
- PHP中的.htaccess偽靜態(tài)文件
- 禁止網(wǎng)站顯示文件目錄列表的2個(gè)方法(htaccess)
- .htaccess rewrite 規(guī)則詳細(xì)說(shuō)明
- Apache服務(wù)器中.htaccess文件的實(shí)用配置示例集錦
- 使Nginx服務(wù)器支持.htaccess的方法
- Apache服務(wù)器中.htaccess的基本配置總結(jié)
- Apache服務(wù)器中使用.htaccess實(shí)現(xiàn)偽靜態(tài)URL的方法
- Ubuntu下開啟Apache對(duì).htaccess 的支持
- Apache2.4.x版wampserver本地php服務(wù)器如何讓外網(wǎng)訪問(wèn)及啟用.htaccess
- apache使用.htaccess文件實(shí)現(xiàn)屏蔽wget下載網(wǎng)站內(nèi)容
- 21個(gè)常用的apache .htaccess文件配置技巧分享
- 教你如何在CI框架中使用 .htaccess 隱藏url中index.php
- 利用.Htaccess阻止IP惡意攻擊網(wǎng)站,禁止指定域名訪問(wèn),禁止機(jī)器爬蟲,禁止盜鏈
相關(guān)文章
Nginx中使用Lua腳本與圖片的縮略圖處理的實(shí)現(xiàn)
本文主要介紹了Nginx中使用Lua腳本與圖片的縮略圖處理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03Ubuntu系統(tǒng)下的Nginx服務(wù)器軟件安裝時(shí)的常見錯(cuò)誤解決
這篇文章主要介紹了Ubuntu系統(tǒng)下的Nginx服務(wù)器軟件安裝時(shí)的常見問(wèn)題解決,包括徹底卸載Nginx的方法介紹,需要的朋友可以參考下2016-03-03Nginx部署SpringBoot項(xiàng)目的實(shí)現(xiàn)
本文主要介紹了Nginx部署SpringBoot項(xiàng)目的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03Nginx作為反向代理時(shí)傳遞客戶端IP的設(shè)置方法
因?yàn)閚ginx的優(yōu)越性,現(xiàn)在越來(lái)越多的用戶在生產(chǎn)環(huán)境中使用nginx作為前端,不管nginx在前端是做負(fù)載均衡還是只做簡(jiǎn)單的反向代理,都需要把日志轉(zhuǎn)發(fā)到后端real server,以方便我們檢查程序的各種故障2014-08-08Windows系統(tǒng)下安裝及部署Nginx詳細(xì)教程(含多個(gè)站點(diǎn)部署)
Nginx是一個(gè)很強(qiáng)大的高性能Web和反向代理服務(wù),也是一種輕量級(jí)的Web服務(wù)器,可以作為獨(dú)立的服務(wù)器部署網(wǎng)站,應(yīng)用非常廣泛,這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下安裝及部署Nginx(含多個(gè)站點(diǎn)部署)的相關(guān)資料,需要的朋友可以參考下2024-01-01Nginx的405 not allowed錯(cuò)誤解決方法
本文主要介紹了Nginx的405 not allowed錯(cuò)誤解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05