綠色資源網:您(nín)身邊最放心的安全下載(zǎi)站! 最新軟件(jiàn)|熱(rè)門排(pái)行|軟件分類|軟件(jiàn)專題|廠商大全

綠色資源網

技術教程
您的(de)位置:首頁服務器類Web服務器 → ISAPI_Rewrite 各版本301轉向大全(附ISAPI_Rewrite語法規(guī)則)

ISAPI_Rewrite 各(gè)版本301轉向大全(附ISAPI_Rewrite語法規則)

我要評(píng)論 2015/10/06 14:25:28 來源:綠色資源網 編輯:www.ynaad.com [ ] 評(píng)論:0 點擊:1032次

終於下定決心放棄之前啟用的二級域名,改回子目錄格式。經測試改(gǎi)回子目錄(lù)後,百度收錄加快一天收錄多次,現在準備把之前的二級域名(google/soso都收錄了好幾萬頁)301重定向到子目(mù)錄下。使用IIS下301轉向方法,但問題(tí)出現了(le),發現收錄的部分偽靜態的頁(yè)麵無法正確重定向,全部重定向首頁。

IIS 做偽靜態采用的是ISAPI_Rewrite 插件(jiàn),大家知道ISAPI_Rewrite 不(bú)僅可以(yǐ)實現url 重寫,還(hái)可以用來設置301轉向(2.x以上才支持,1.3版本僅支持(chí)302轉向),下麵介紹ISAPI Rewrite做(zuò)301重定向的方法:

1. 將不帶www的(de)頂(dǐng)級(jí)域名301重定向到帶www的域名

# ISAPI_Rewrite 2.x 版本
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond Host: ^downcc\.com$
RewriteRule (.*) http\://www\.downcc\.com$1 [I,RP]

# ISAPI_Rewrite 3.0 版本
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond %{HTTP:Host} ^downcc\.com$
RewriteRule (.*) http\://www\.downcc\.com$1 [NC,R=301]

2. 不同域名之間的301轉向

# ISAPI_Rewrite 2.x 版本(běn)
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond %{HTTP:Host} ^downcc\.cn$
RewriteRule (.*) http\://www\.downcc\.com$1 [NC,R=301]

# ISAPI_Rewrite 3.0 版(bǎn)本
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond %{HTTP:Host} ^www\.downcc\.cn$
RewriteRule (.*) http\://www\.downcc\.com$1 [NC,R=301]

3. 將頁(yè)麵301重定向到另外一個頁麵

# ISAPI_Rewrite 2.x 版本
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^/oldpage.html$ http://ynaad.com/dll.html[I,O,RP,L]

# ISAPI_Rewrite 3.0 版本
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^/oldpage.html$ http://ynaad.com/dll.html[NC,L,R=301,O]

注意:ISAPI_Rewrite 1.3是現在國內應用得比較多的一個老版本(běn),它可用於url 重寫,但並不適合用(yòng)來實現真正的(de)301重(chóng)定向功能。建議下載最新的ISAPI_Rewrite 3.0 版本。ISAPI_Rewrite 1.3 的(de)在IIS下對域名重定向雖然能夠順利跳轉,但是返回的(de)仍然是302 HTTP header,而不是301 狀態碼。而且該段代碼用於301重定(dìng)向後,在子目錄中的其他頁麵都會跳轉到首頁。

這樣設置以後,你的windows iis 也能實現301重定向了(le),不管是Google 和百度搜索引擎都不會有因為(wéi)帶有www和不帶www 的域(yù)名而產生重複頁麵問題了。

301重定向在線檢測工具:http://www.ab173.com/zhanzhang/getheader.php

 附:ISAPI_Rewrite語法規則

ISAPI_Rewrite 規則對大小寫敏感,但可以忽略大小寫了。
I (ignore case)不管大小寫強行指定字符匹配。
例:RewriteRule /code/project/([0-9,a-z]*).html /soft.jsp\?softpy=$1 [I]

其他的參數一覽
I (ignore case)
不管大小寫強行指定字符匹配,這個FLAG影響RewriteRule指令和相應的RewriteCond 指令。

F (Forbidden)
對客戶(hù)端做反應,停止REWRITING進程並且發(fā)送403錯誤,注意在這種(zhǒng)情(qíng)況下FORMATSTRING 是無用的並可以(yǐ)設置(zhì)為任何非空字符串(chuàn)。

L (last rule)
不應用任何重寫規則在此停止重寫(xiě)進程,使用這(zhè)個FLAG以阻止當前(qián)被重寫的URI被後麵的規則再次重寫(xiě)。

N (Next iteration)
強(qiáng)製REWRITINGENGINE調整規則目標(biāo)並且從頭重啟規則檢查(所有修改將保存),重啟次數由RepeatLimit指定的值限製,如果這個數值(zhí)超過(guò)N FLAG將被忽略。

NS (Next iteration of the same rule)
以N標記工作不從相同的規則重啟規則規則進程(例如(rú)強製重(chóng)複規則應(yīng)用),通過RepeatLimit指令指定一個反複實行某一規則的最大數目。

P (force proxy)
強製(zhì)目的URI在內(nèi)部強製為代理需求並且立即通過ISAPI擴(kuò)展應付代理需(xū)求,必須確認代理字符(fú)串是一個有效的URI包括協議 主機(jī)等等否則代理將返回錯誤。

R (explicit redirect)
強製服務器對客戶(hù)端發(fā)出重定向指示即時應答,提供目的URI的新地址,重定向規則(zé)經常是(shì)最後規則。

RP (permanent redirect)
幾乎和[R]標記相(xiàng)同但是發布301HTTP狀態而不是302HTTP狀態代碼。

U (Unmangle Log)
當(dāng)URI是源需(xū)求而不是重寫(xiě)需求時記載URI。

O (nOrmalize)
在(zài)實行之(zhī)前標準化字符串。標(biāo)準化包括URL-ENCODING,不合法的字符的再移動等,這個(gè)標記對於URLS和URLS-ENDODED頭是(shì)有用的。

CL (Case Lower)
小寫。

CU (Case Upper)
大寫。

RewriteHeader directive
Syntax: RewriteHeader HeaderName Pattern FormatString [Flags]
這個指令是RewriteRule的更概括化變種,它(tā)不僅重寫URL的客戶端需求部分,而且重寫HTTP頭,這個指令不僅用於重寫。生成,刪除任(rèn)何HTTP頭,甚至(zhì)改變客戶端請求的方法。

HeaderName
指定將被(bèi)重寫(xiě)的客戶頭,可取(qǔ)的值與 RewriteCond 指令中TestVerb參數(shù)相同。

Pattern
限定規則(zé)表達式以匹配Request-URI。

FormatString
限定將生成新的URI的FormatString 。
[Flags]
是一個下列FLAGS的命令分隔列表(biǎo)。

I (ignore case)
不管大小寫強行指定字符匹配,這個FLAG影響RewriteRule指令和相(xiàng)應的RewriteCond 指令。
F (Forbidden)
對客戶端做反應,停止REWRITING進程並且發送(sòng)403錯誤,注意在這種情況下FORMATSTRING 是無用(yòng)的(de)並(bìng)可以設(shè)置為任何非空字符串。

L (last rule)
不應(yīng)用任何重(chóng)寫規則在此停止重寫進程,使用這個FLAG以阻止當前(qián)被(bèi)重寫的URI被後麵的規則再次重寫。

N (Next iteration)
強製REWRITINGENGINE調整規則目標並且(qiě)從頭重啟規則檢查(所有修改將保存),重(chóng)啟次(cì)數由RepeatLimit指定的值限製,如果這個數值超過N FLAG將被忽略。

NS (Next iteration of the same rule)
以N標(biāo)記工作不從相同的規則重啟(qǐ)規則規則進程(例如強製重複(fù)規則(zé)應用),通過RepeatLimit指令指定一個反複實行某一規則的最大數目。

R (explicit redirect)
強製服務器對(duì)客戶端發出重(chóng)定向指示(shì)即時應答,提(tí)供目的URI的(de)新地址,重定向規則經(jīng)常(cháng)是最後(hòu)規則。

RP (permanent redirect)
幾乎和[R]標記相同但是發布301HTTP狀態而不是302HTTP狀態代碼。

U (Unmangle Log)
當(dāng)URI是源(yuán)需求而不是重寫(xiě)需求時記(jì)載URI。

O (nOrmalize)
在實行之(zhī)前標準化字符串。標準化包括URL-ENCODING,不合法的(de)字符的再(zài)移動等(děng),這個標記對於(yú)URLS和URLS-ENDODED頭是有用的。

CL (Case Lower)
小寫。
CU (Case Upper)
大寫。

關鍵詞:ISAPI_Rewrite

閱讀本文後您有什麽感(gǎn)想(xiǎng)? 已(yǐ)有(yǒu) 人給出評(píng)價!

  • 2 歡迎喜(xǐ)歡
  • 1 白癡
  • 2 拜托
  • 9 哇
  • 1 加油
  • 34 鄙視
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡