如何在IIS7或IIS7.5中匯入匯出站點及應用程式池.

kingkoo發表於2013-08-07

為實現負載平衡,我們可能會使用多個WEB伺服器,也就會需要給多個IIS配置同樣的站點和應用程式池.那麼我們需要一個一個的重新建嗎?當然不用,我們只需要一些簡單的命令就可以在IIS7(Windows Server 2008)或IIS7.5(Windows Server 2008 R2)上來匯出匯入這些配置了.

 

當我們在IIS7或IIS7.5上建立站點時,IIS會為我們自動建立一個對應該站點的唯一的應用程式池.所以,我們要匯入網站資訊,就必須先匯入應用程式池資訊.

 

在IIS7+上匯出所有應用程式池的方法:

%windir%/system32/inetsrv/appcmd list apppool /config /xml > c:/apppools.xml

 

這個命令會將伺服器上全部的應用程式池都匯出來,但有些我們是我們不需要的,要將他們刪掉.比如:

 

  • DefaultAppPool
  • Classic .Net AppPool

  如果在匯入時發現同名的應用程式池已經存在,那麼匯入就會失敗.

 

匯入應用程式池的方法: 

%windir%/system32/inetsrv/appcmd add apppool /in < c:/apppools.xml

 

這樣就可以將全部的應用程式池都匯入到另一個伺服器中了.

 

  匯出全部站點的方法:

 %windir%/system32/inetsrv/appcmd list site /config /xml > c:/sites.xml

 

 同樣,我們需要編輯sites.xml檔案刪除不需要的站點.如:

 

  • Default Website

 

 

匯入站點的方法:

 %windir%/system32/inetsrv/appcmd add site /in < c:/sites.xml

 

至此,匯入工作完成了,看看兩臺伺服器的IIS配置一樣了吧. 

 

另外,介紹下單獨匯出匯入一個站點的方法

 

匯出單獨應用程式池:

%windir%/system32/inetsrv/appcmd list apppool “應用程式池名稱” /config /xml > c:/myapppool.xml

黃色字型的就是要匯出的應用程式池名稱 

 

匯入單獨應用程式池:

  %windir%/system32/inetsrv/appcmd add apppool /in < c:/myapppool.xml

 

匯出單獨站點:

%windir%/system32/inetsrv/appcmd list site “站點名稱” /config /xml > c:/mywebsite.xml 

黃色字型的就是要匯出的站點名稱 

 

  匯入單獨站點:

%windir%/system32/inetsrv/appcmd add site /in < c:/mywebsite.xml

 

參考: http://www.microsoftpro.nl/2011/01/27/exporting-and-importing-sites-and-app-pools-from-iis-7-and-7-5/

相關文章