2010-07-15 78 views
1

我正在編寫一個使用WiX的安裝程序,它將在IIS中創建網站和虛擬目錄等等。我一直無法確保安裝程序在Windows Server 2003與IIS6,Windows Server 2008與IIS7以及Windows Server 2008 R2與IIS7.5上都能正常工作。IIS6和IIS7之間的主要區別

我遇到的第一個問題是IIS7爲帳戶使用了不同的組。而不是IIS6的IIS_WPG它將使用IIS_IUSR組。過去,網站配置屬於引用此組名稱的單獨自定義操作功能,因此遷移到使用WiX IIS功能可能有助於解決IIS版本之間的其他細微差異。

我應該知道IIS是否還有其他重大更改?是否有編寫安裝程序在Windows Server 2003和Windows Server 2008平臺上運行的準則?

感謝

回答

2

如果您正在使用WiX的3.0,你應該知道,你必須把「IIS 6兼容模式」在IIS 7.X爲standard WiX IIS extension工作。 WiX v3.5包含對IIS 7的本機支持,但它尚不穩定 - WiX 3.5本身就是beta版本。您可以閱讀更多關於WiX版本計劃和功能集on Rob's blog

我個人必須在我的產品中支持從5.1(WinXP)開始的所有版本的IIS。我結束了使用標準的WiX IIS擴展,並要求「IIS 6兼容模式」作爲先決條件。此外,我爲每個IIS版本都有一個單獨的WebSite元素。

例如,WebSite element具有WebApplication屬性,其中您引用了WebApplication element。該元素依次具有Isolation屬性,這對IIS 5.X是有意義的,而WebAppPool屬性對於IIS 6+是有意義的。因此,我有幾個WebApplication元素是從WebSite for IIS 5或從WebSite for IIS 6+中引用的。

希望你有想法,它可以幫助你。

+0

嗨妍,感謝您的輸入。當您啓用「IIS6兼容模式」時,是否啓用它整個IIS或只是該應用程序?我不想限制其他開發人員無法使用IIS7中的新功能。我記得有一個IIS6的IIS5隔離模式,這是類似的東西嗎? – fletcher 2010-07-18 05:53:48

+0

可以爲整個IIS打開IIS6兼容模式(您可以在「程序和功能」>「打開和關閉Windows功能」>「Internet信息服務」下找到它),但是您不會限制其他開發人員使用新的IIS7 API。您只需打開較舊代碼的路徑即可與IIS 6元數據庫(如WiX IIS擴展)交談,以便在您的IIS上運行。 不,這不是IIS 5隔離模式的工作方式。 – 2010-07-18 20:03:12

相關問題