您現(xiàn)在的位置:首頁 >關(guān)于我們 >行業(yè)新聞 >教你玩轉(zhuǎn)偽靜態(tài)頁面

教你玩轉(zhuǎn)偽靜態(tài)頁面

時間:2011年1月8日
服務(wù)器租用IIS中增加URL Rewrite功能,最多人選用的是名為“ISAPI Rewrite“的軟件,網(wǎng)上下載的破解版,其實破解不完善,最終會不能用。

再次查找,找到了Ionic's Isapi Rewrite Filter,完全開源,完全免費,完全沒有中文使用手冊。

測試后,使用正常,用法分享一下:

首先到官方網(wǎng)站http://www.codeplex.com/IIRF/Release/ProjectReleases.aspx下載最新軟件包,注意要下載的是IonicIsapiRewriter-2.0-Release-bin.zip,版本號可能會變化。以下安裝僅針對WIN2003+IIS6.0的服務(wù)器環(huán)境。

一、安裝IIRF

1、復制IIRF的DLL(IIRF.dll)到相應的文件夾,如D:\Rewrite。 或者,它可以在一個完全不同的目錄樹。 這取決于你。

2、如果您創(chuàng)建一個服務(wù)器全局范圍的設(shè)置文件(IirfGlobal.ini),你必須把它與(IIRF.dll)文件在同一目錄中。 該URL Rewrite篩選器將尋找其在該文件中的全局設(shè)置文件。 如果是多個站點,則在站點更目錄下創(chuàng)建(IIRF.dll)文件。

3、對(IIRF.dll)所在目錄賦予IIS_WPG用戶組“讀取”、“讀取與運行”、“寫入”權(quán)限。

4、 打開Internet信息服務(wù)管理器。右鍵點擊IIS管理器左欄“網(wǎng)站” 》“屬性”,彈出“網(wǎng)站屬性”選項卡,選擇“ISAPI篩選器”,如下圖添加IIRF。

5、重啟IIS

6、右鍵點擊服務(wù)器托管IIS管理器左欄“網(wǎng)站” 》“屬性”,彈出“網(wǎng)站屬性”選項卡,選擇“ISAPI篩選器”,查看“IIRF”加載是否成功。若是綠色向上箭頭,則表示加載成功。

 

二、規(guī)則文件格式基本照搬ISAPI Rewrite,要作修改

RewriteRule [源URL正則條件] [目的URL]
ISAPI Rewrite與IIRF的區(qū)別就在[目的URL],ISAPI Rewrite的要轉(zhuǎn)義,而IIRF不用轉(zhuǎn)義。
如果網(wǎng)上有現(xiàn)成的ISAPI Rewrite的規(guī)則可以直接復制過來,將[目的URL]中的反斜杠(\)一個個刪除就可以用在IIRF中用了。
知道這個之后,你就可以隨便在網(wǎng)上與人交流,按ISAPI Rewrite交流,最后把轉(zhuǎn)義符(\)刪掉就行了。
三、日志設(shè)置

在IIRF中日志值可以設(shè)置為0-5,在規(guī)則文件的開頭部分有兩行設(shè)置日志類型
RewriteLog C:\Rewrite\supesite\iirfLog.out (注意要寫清楚路徑,各站點不同)
RewriteLogLevel 0 (0為不記類,3為一般測試,5為處理故障)
日志的代價高昂,同時不會自動刪除文件,日志類型一定要設(shè)成0,除非用于檢查才能修改為其他值,檢查完后一定要改為0,否則日志文件把硬盤占滿就麻煩了。
如果日志不為0,篩選器起用后,對應文件夾會產(chǎn)生類似以下的文件,是文本格式的,可以用記事本查看。
iirfLog.out.12345.log

四、查看配置

在IIRF.ini文件中輸入以下配置參數(shù),則可通過瀏覽器方便查看目前IIRF配置
StatusUrl iirfStatus
StatusInquiry ON
在瀏覽器中輸入http://localhost/iirfstatus,即可查看。

五、規(guī)則文件可隨時修改,隨時生效!

六、附上wordpress的IIRF規(guī)則

先到服務(wù)器租用wordpress后臺設(shè)置固定連接為:/post/%post_id%.html
然后在wordpress所在網(wǎng)站的根目錄創(chuàng)建(IIRF.ini)文件,并在文件中加入以下規(guī)則:

 

以下為引用的內(nèi)容:
RewriteLogLevel 0 RewriteLog E:\flyingblue\logfiles\IIRFLOG\log StatusUrl iirfStatus StatusInquiry ON RewriteRule /index.html$ /index.php [L] # from accessing through HTTP # # WordPress rewrite rules# # # Below is for permalink like /post/%post_id%.html # # Provided By Sideblue # # URL:http://ivup.cn RewriteCond %{REQUEST_FILENAME} ^wp-content.* RewriteCond %{REQUEST_FILENAME} ^wp-admin.* RewriteCond %{REQUEST_FILENAME} ^wp-include.* RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule /post/tag/(.*) /index.php\?tag=$1 RewriteRule /tag/(.*) /index.php?tag=$1 RewriteRule /(contact|about-copyright|favor|archives|tags|sitemap) /index.php?pagename=$1 RewriteRule /post/category/(.*)/(feed|rdf|rss|rss2|atom)/?$ /wp-feed.php?category_name=$1&feed=$2 RewriteRule /post/category/?(.*) /index.php?category_name=$1 RewriteRule /author/(.*)/(feed|rdf|rss|rss2|atom)/?$ /wp-feed.php?author_name=$1&feed=$2 RewriteRule /author/?(.*) /index.php?author_name=$1 RewriteRule /rss.xml /wp-feed.php?feed=rss2 RewriteRule /feed/?$ /wp-feed.php?feed=rss2 RewriteRule /comments/feed/?$ /wp-feed.php?feed=comments-rss2 # RewriteRule /([0-9]+)/?([0-9]+)?/?$ /index.php?p=$1&page=$2 # RewriteRule /post/([0-9]+)/?([0-9]+)?/?$ /index.php?p=$1&page=$2 RewriteRule /post/([0-9]+).html /index.php?p=$1 RewriteRule /page/(.*)/?s=(.*) /index.php?s=$2&paged=$1 RewriteRule /page/(.*) /index.php?paged=$1 RewriteRule /post/date/([0-9]{4})([0-9]{1,2})([0-9]{1,2})/([^/]+)/?([0-9]+)?/?$ /index.php?year=$1&monthnum=$2&day=$3&name=$4&page=$5 RewriteRule /post/date/([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$ /index.php?year=$1&monthnum=$2&day=$3&page=$4 RewriteRule /post/date/([0-9]{4})/([0-9]{1,2})/?$ /index.php?year=$1&monthnum=$2&page=$3 RewriteRule /post/([0-9]+).html/(feed|rdf|rss|rss2|atom) /index.php?feed=rss2&p=$1 RewriteRule /post/([0-9]+).html/trackback /wp-trackback.php?p=$1


Copyright© 2004-2020 河南海騰電子技術(shù)有限公司 版權(quán)所有   經(jīng)營性ICP/ISP證 備案號:B1-20180452   豫公網(wǎng)安備 41019702002018號    電子營業(yè)執(zhí)照