技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運(yùn)營

贊助商

分類目錄

贊助商

最新文章

搜索

.htaccess(適用IIS6)參數(shù)解釋及示例詳解

作者:admin    時(shí)間:2022-9-6 15:2:17    瀏覽:

.htaccess是對(duì)于網(wǎng)站目錄進(jìn)行各種權(quán)限規(guī)則設(shè)置的一個(gè)文件,它多在Apache站點(diǎn)中使用。在IIS6中同樣可以使用.htaccess,只是需要安裝一個(gè)插件rewrite3.1。

.htaccess可以做的事情很多又很實(shí)用,比較常見的是定義默認(rèn)首頁名稱,404頁面,301重定向等等,還有更多的功能比如偽靜態(tài),限制圖片外鏈,限制下載,密碼保護(hù),去除頁面廣告等等,

本文中,詳細(xì)介紹.htaccess(適用IIS6)參數(shù)解釋及示例詳解。

參數(shù)解釋:

  • $N 規(guī)則后向引用
  • %N RewriteCond 后向引用
  • ${mapname:key|default}
  • %{VARNAME} 服務(wù)器變量
  • ‘!’ 取非
  • [C] 與下一個(gè)規(guī)則聯(lián)鎖
  • [CO=name:val:domain:lifetime:path] 設(shè)置cookie
  • [F] 強(qiáng)制禁止應(yīng)答
  • [G] 強(qiáng)制繼續(xù)應(yīng)答
  • [H=content-handler] 明確的內(nèi)容處理 (不適用)
  • [L] 上一個(gè)規(guī)則標(biāo)記
  • [N] 再次應(yīng)用規(guī)則
  • [NC] 大小寫不敏感
  • [NE] 不轉(zhuǎn)義輸出
  • [NS]非內(nèi)部子請求
  • [P]代理通過
  • [QSA] 追加查詢字符串
  • [R =code] 重定向
  • [S=num] 跳到下面第n條規(guī)則
  • [T=MIME-type] 強(qiáng)制明確應(yīng)答 MIME 類型
  • RewriteCond
  • [NC] 大小寫不敏感
  • [OR] 邏輯并集

示例:

1、普通重寫

<IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteCond %{QUERY_STRING} ^(.*)$
      RewriteRule ^topic-(.+)\.html$ portal.php?mod=topic&topic=$1&%1
      RewriteCond %{QUERY_STRING} ^(.*)$
      RewriteRule ^article-([0-9]+)-([0-9]+)\.html$ portal.php?mod=view&aid=$1&page=$2&%1
      RewriteCond %{QUERY_STRING} ^(.*)$
      RewriteRule ^forum-(\w+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1
</IfModule>
 
RewriteRule ^(.*)/topic-(.+)\.html(\?(.*))*$ $1/portal\.php\?mod=topic&topic=$2&$4
RewriteRule ^(.*)/article-([0-9]+)-([0-9]+)\.html(\?(.*))*$ $1/portal\.php\?mod=view&aid=$2&page=$3&$5
RewriteRule ^(.*)/forum-(\w+)-([0-9]+)\.html(\?(.*))*$ $1/forum\.php\?mod=forumdisplay&fid=$2&page=$3&$5]

2、動(dòng)態(tài)地址跳轉(zhuǎn)到靜態(tài)地址

RewriteRule ^goods-([0-9]+)(.*)\.html$  goods\.php\?id=$1 [QSA,L]
 
RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ [NC]
RewriteRule ^goods.php$ /goods-%1.html? [L,R=301]
 
RewriteCond %{QUERY_STRING} ^id=1$ [NC]
RewriteRule ^category.php$ http://www.yaolongnonwoven.com/? [L,R=301] 加?不帶參數(shù),不加帶上參數(shù)

3、301重定向

RewriteCond %{HTTP_HOST} ^xxxx1.com$ [NC] 
RewriteCond %{HTTP_HOST} ^xxxx2.com$ [NC] 
RewriteRule ^(.*)$ http://www.xxxx.com/$1 [R=301,L]

4、取消目錄執(zhí)行權(quán)限

RewriteCond % !^$   
RewriteRule uploads/(.*).(php)$ – [F]   
RewriteRule data/(.*).(php)$ – [F] 

5、屏蔽來源域名

RewriteCond %{HTTP_REFERER} www.baidu.com [NC]
RewriteRule ^(.*)$ - [F]

6、屏蔽ip地址

RewriteCond %{http:X-Forwarded-For}&%{REMOTE_ADDR}&%{http:X-Real-IP} (8.8.4.4|8.8.8.) [NC]
RewriteRule (.*) - [F]

7、過濾靜態(tài)文件

RewriteCond %{REQUEST_URI} ^.*(.css|.js|.gif|.png|.jpg|.jpeg|.xml)
RewriteRule ^(.*)$   - [L] 
 
RewriteCond %{REQUEST_FILENAME} !-f     
RewriteCond %{REQUEST_FILENAME} !-d

8、屏蔽蜘蛛

RewriteCond %{HTTP_USER_AGENT} (baiduspider|googlebot) [NC]

RewriteRule ^(.*)$ - [F]

總結(jié)

本文介紹了.htaccess(適用IIS6)參數(shù)解釋及示例詳解,rewriteCond條件判斷,就像我們程序中的if語句一樣,表示如果符合某個(gè)或某幾個(gè)條件則執(zhí)行RewriteCond下面緊鄰的RewriteRule語句。

相關(guān)文章

標(biāo)簽: htaccess  
x
  • 站長推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */