2016-10-14 39 views
0

底線:有沒有辦法允許綁定的IIS站點的子路徑傳遞到直接在http.sys中綁定的非IIS應用程序?允許IIS虛擬目錄通過一個單獨的http.sys綁定

我在Windows Server 2008上使用IIS 7.5。我有一個現有的IIS站點綁定到特定的根網址,說fooapps.bar.com。該站點下有多個應用程序和目錄。所有這些都很好。問題是我現在想允許fooapps.bar.com的子路徑傳遞給另一個直接使用http.sys註冊自己的服務,而不是IIS應用程序。

所以這個服務綁定自己與http.sys在fooapps.bar.com/Services。如果我停止綁定到fooapps.bar.com的IIS站點,那麼對fooapps.bar.com/Services的請求將成功接收並由http.sys綁定的服務處理。但是,如果IIS站點正在運行,則所有到fooapps.bar.com/Services/*的請求都會被IIS攔截並返回錯誤,因爲相應物理路徑上實際上沒有任何內容。我怎麼能告訴IIS完全忽略fooapps.bar.com/Services,而是讓該路徑的請求通過http.sys中的任何其他事情?

fooapps.bar.com (site) 
    + Files (normal directory with static .html files) 
    + SomeApp1 (application) 
    + SomeApp2 (application) 
    + nuget 
     + Feed1 (application) 
     + Feed2 (application) 
     + Feed3 (application) 
    + Services (??? How to make this pass through to separate http.sys binding?) 

回答

0

爲所需的子樹創建命名空間預留。 在具有管理權限的命令行中執行:

netsh http add urlacl url=http://fooapps.bar.com:80/Services/ user=<samUserName> 

中使用用戶名的非IIS應用程序運行。