2011-06-03 53 views
0

我很難找到清晰/簡明的文檔,爲設置生存在一個Web服務器上的多個站點的ISAPI_Rewrite規則。我們需要每個站點都有自己的httpd.ini文件來概述自己的規則集。此外,每個站點都可能使用不同版本的ISAPI_Rewrite模塊(必須考慮這一點)。我們正在使用IIS 6.0。ISAPI重寫 - 在同一臺Web服務器上的多個站點

有沒有人有關於如何去做這件事的任何建議?

任何幫助將不勝感激!

感謝,

-Tom

回答

3

既然你提到的httpd.ini,我猜你正在使用的ISAPI_Rewrite V2。我建議在IIS 6上升級到v3(對於IIS 7計算機,helicon強烈建議'Ape',我還沒有嘗試過。)

這裏假設付費版isapi_rewrite v3;免費軟件精簡版版本不適用於這個答案。

在v3中,該文件名爲.htaccess的替代的httpd.ini

每個網站都可以有自己的.htaccess文件,具有獨立的規則。將每個文件放在每個網站的根文件夾中。

對於不同版本的模塊,我還沒有試過保留兩個版本的安裝,我不知道這是可能的。相反,v3有一個RewriteCompatibility2指令,可以在每個.htaccess文件中包含或省略。這應該允許您在某些網站上使用v2規則,而在其他網站上使用v3規則。

顯然這使得v3與v2兼容,但不是100%的語法匹配。它們爲現有規則提供翻譯工具。我似乎記得它幾乎沒有改變任何東西。主要區別在於查詢字符串參數處理 - 它在v2規則中是顯式的,但在v3中單獨處理。 (一旦完全轉化爲V3的規則更加簡單得多。)

以上應該可以解決你的問題,但也有更復雜的配置也:

子目錄也可以擁有自己的.htaccess文件,這些文件在父文件之後運行。我已經完成了一次處理指向「當前」數據文件夾。

還有虛擬主機,目錄,位置,文件的指令。 概述在這裏:http://www.helicontech.com/isapi_rewrite/doc/context.htm。我不得不多次閱讀這些內容,因此請閱讀各個指令以獲得更清晰的解釋。

+0

不客氣 - 我的第一個回答! – goodeye 2011-07-04 23:49:00

相關問題