使Nginx服務(wù)器支持.htaccess的方法
可能很多朋友都常用nginx不支持.htaccess,只有apache才支持.htaccess文件,其實這是錯誤的看法nginx也是支持.hatccess的哦,下面我來給各位總結(jié)一下配置方法。
其實nginx和.htaccess一點關(guān)系都沒有,只是一大堆人深受apache的影響覺得nginx應(yīng)該也要支持.htaccess功能。在nginx的配置中直接include .htaccess文件就好
include /站點目錄/.htaccess;
多么簡單,但是更讓人哭笑不得的是有大部分人根本就不知道nginx與apache是兩個不同webserver程序,于是不少人這么干:在nginx里include .htaccess文件后,把apache偽靜態(tài)規(guī)則的.htaccess上傳到站點根目錄下...無語。其實nginx可以include任何文件,而不僅僅是.htaccess。
其實nginx這樣引用.htaccess跟apache還是有區(qū)別的:
1、nginx是啟動引入,因為nginx特別注重效率,所以啟動的時候會把所有的配置文件讀入內(nèi)存,然后啟動個。如果發(fā)現(xiàn)有語法錯誤,則啟動失敗。而apache則是動態(tài)引入,每次訪問站點都會重新載入配置。
2、nginx中的include是手動添加,指定目錄。apache已經(jīng)把.htaccess作為它的一種特色機制,并且支持站所有子目錄都可以有.htaccess文件。
根際實際開發(fā)經(jīng)驗,很多人在早期都是用虛擬空間的多,而早期的虛擬空間基本都是apache做webserver,所以用戶不需要聯(lián)系空間商就能自己做偽靜態(tài),而開源程序更是方便的拓展這一功能(ecshop,wordpress,phpcms等等)。并且維護也方便,只要覆蓋.htaccess就好。
其實,沒有幾個站點經(jīng)常去修改.htaccess,并且現(xiàn)在基本使用vps居多。
nginx 也可使用 .htaccess 文件實現(xiàn)多種功能。
在 nginx/nginx.conf的server{}中引入 .htaccess 文件:
include /vhosts/quany.info/.htaccess;
nginx完全可以支持.htaccess文件,請按如下操作:
1、新建一個.htaccess文件,在里面輸入規(guī)則,如本站的規(guī)則:
# nginx rewrite rule rewrite ^(.*?)/article/.*?-(d+)-(d+).html$ $1/show.html?id=$2&page=$3 break; rewrite ^(.*?)/category/.*?-(d+)-(d+).html$ $1/list.html?id=$2&page=$3 break; rewrite ^(.*?)/tag/([^/]+)/?$ $1/tag.html?w=$2 break; rewrite ^(.*?)/tag/([^/]+)/(d+)$ $1/tag.html?w=$2&page=$3 break; # end nginx rewrite rule
保存文件并上傳到網(wǎng)站的根目錄。
2、修改虛擬主機配置
# ee /usr/local/etc/nginx/nginx.conf #freebsd 7.2默認nginx默認安裝的配置文件
在你需要添加偽靜態(tài)的虛擬機中的server塊中引入.htaccess文件
include /usr/www/.htaccess #請把這個改成你.htaccess文件的位置,
保存、退出重啟nginx
# /usr/local/etc/rc.d/nginx restart
刷新看看,如果能正常器從證明你的rewrite rule的語法是正確
nginx的rewrite規(guī)則您可以直接放在主機配置中也可以放在獨立的文件用includeinru,存為獨立的文件時,保存到一個新的文件(文件名可以任意取,不過建議還是用.ht(注意有個“點”)開頭的文件名,因為這個服務(wù)器里面默認過濾了外部對.ht開頭的文件訪問:
location ~ /.ht { deny all; }
- 使用.htaccess設(shè)置圖片防盜鏈的詳細方法
- Apache使用 .htaccess 來實現(xiàn)強制https訪問的方法
- 讓Apache 2支持.htaccess并實現(xiàn)目錄加密的方法
- APACHE支持.htaccess偽靜重寫出錯 No input file specified的解決方案
- Apache使用.htaccess 屏蔽惡意 User Agent(防蜘蛛)
- PHP中的.htaccess偽靜態(tài)文件
- 禁止網(wǎng)站顯示文件目錄列表的2個方法(htaccess)
- .htaccess rewrite 規(guī)則詳細說明
- Apache服務(wù)器中.htaccess文件的實用配置示例集錦
- Apache服務(wù)器中.htaccess的基本配置總結(jié)
- Apache服務(wù)器中使用.htaccess實現(xiàn)偽靜態(tài)URL的方法
- Ubuntu下開啟Apache對.htaccess 的支持
- Apache2.4.x版wampserver本地php服務(wù)器如何讓外網(wǎng)訪問及啟用.htaccess
- nginx支持.htaccess文件實現(xiàn)偽靜態(tài)的方法分享
- apache使用.htaccess文件實現(xiàn)屏蔽wget下載網(wǎng)站內(nèi)容
- 21個常用的apache .htaccess文件配置技巧分享
- 教你如何在CI框架中使用 .htaccess 隱藏url中index.php
- 利用.Htaccess阻止IP惡意攻擊網(wǎng)站,禁止指定域名訪問,禁止機器爬蟲,禁止盜鏈
相關(guān)文章
利用nginx+lua+redis實現(xiàn)反向代理方法教程
這篇文章主要給大家介紹了利用nginx+lua+redis實現(xiàn)反向代理方法教程,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-05-05