IIS Web.config 衝突、繼承問題
我們都知道IIS可以將多個網站集合在一起
像這樣
www.mysite.com
www.mysite.com/erp/
www.mysite.com/crm/
複數站台建立在同一個domain下時
web.config會自動繼承主站的設定
因此如果有重覆的設定或引用重覆的套件
IIS就會報錯誤訊息
網路上查你會看到很多人的解法是使用
來清除上一個web.config設定
path="." inheritInChildApplications="false">
2.設定最上方的configuration 要指定版本同時如果你的schema使用NetConfiguration/v2.0 那你的iis使用的.net framework要4.0以上
更新完web.config 最好重啟IIS服務 檢查看看是否子站台可正常工作
footer See also :
https://stackoverflow.com/questions/782252/avoid-web-config-inheritance-in-child-web-application-using-inheritinchildapplic
像這樣
www.mysite.com
www.mysite.com/erp/
www.mysite.com/crm/
複數站台建立在同一個domain下時
web.config會自動繼承主站的設定
因此如果有重覆的設定或引用重覆的套件
IIS就會報錯誤訊息
網路上查你會看到很多人的解法是使用
path="." inheritInChildApplications="false">
或使用
來進行不繼承上一個階層的設定
但有幾個注意事項我覺得網路上都沒有講得很清楚的
整理在這邊
1.語法 要已區段包圍web.config 而且有些區段是不能使用語法的,向下面這樣
但有幾個注意事項我覺得網路上都沒有講得很清楚的
整理在這邊
1.
path="." inheritInChildApplications="false">
2.設定最上方的configuration 要指定版本同時如果你的schema使用NetConfiguration/v2.0 那你的iis使用的.net framework要4.0以上
xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
3. 這個區段要加在"最上層"的WEB.CONFIG 很重要~ 很多人會以為是加在有繼承問題的WEB.CONFIG上 但其實是加在父節點(或說上一層目錄)的WEB.CONFIG裡面。更新完web.config 最好重啟IIS服務 檢查看看是否子站台可正常工作
footer See also :
https://stackoverflow.com/questions/782252/avoid-web-config-inheritance-in-child-web-application-using-inheritinchildapplic
留言