本文主要講IIS發布網站、發布webservice的重要步驟、注意事項。
一、IIS發布網站、發布webservice
1.打開IIS管理器,如下圖
2.在【網站】上點擊右鍵,添加網站,設置如下圖:
如果需要使用域名訪問網站,則必須先購買域名並辦理備案。如果使用https,則必須先購買或申請免費的SSL證書,並下載證書文件放在網站服務器上。
發布webservice的方法與發布網站完全相同,物理路徑選擇webservice所在路徑即可。
一個網站可以綁定多個域名,可以同時有http、https類型域名,添加多個域名的方法:
在已經添加好的網站上點擊右鍵 -- 編輯綁定:
至此,一個IIS網站就發布成功了。
在網站上點擊右鍵 -- 管理網站 -- 瀏覽,即可打開瀏覽器查看已發布的網站。
二、在已有網站中添加webservice
想要在已經運行的網站中添加webservice,利用已有的域名為其他應用提供接口,只需在已有網站中【添加應用程序】即可。
填寫別名,選擇webservice的物理路徑,應用程序池使用默認的此網站的應用程序池即可。
這里填寫的別名,就是網站地址的子目錄名稱,例如,網站域名為 www.xxxabc.com,添加應用程序的別名為mytest,webservice頁面名稱為webservTest.asmx,
則訪問此webservice的地址是:http://www.xxxabc.com/mytest/webservTest.asmx
需要注意:默認情況下,添加的應用程序會使用網站跟目錄的Web.config配置文件,但是通常網站本身的配置文件和webservice的配置文件是不同的,按默認使用,則webservie是無法訪問的。
這就需要修改網站和webservice的雙方的Web.config文件,避免繼承和覆蓋,修改方法:
添加 <location path="." allowOverride="false" inheritInChildApplications="false"> </location> 節,
將<appSettings>、 <system.web>、<system.webServer> 放入<location>中。
三、虛擬目錄和應用程序的區別
虛擬目錄:
虛擬目錄是指在站點下建立一個虛擬子目錄,指定一個固定的物理路徑做為站點的應用路徑。
1. 虛擬目錄是分布式文件存儲方案之一,簡單完成文件的分布式存儲,提升硬盤IO性能
2. 虛擬目錄與父級站點共用一個應用程序池(Framework必須相同)
3. 虛擬目錄必須將可執行文件(dll等)放置在父級站點的bin目錄下。
4. 虛擬目錄中的web.config文件繼承父級站點的web.config.
應用程序:
應用程序是指在父級目錄下建立了一個單獨的應用程序,可獨享應用程序池,是同一域名下程序的獨立開發、獨立部署的最佳應用策略 。
1. 應用程序可以與父級站點擁有不同的應用程序池(Framework可以不同,互不影響)
2. 應用程序的可執行文件獨立的放置在自己目錄下的bin中,不能放置在站點根目錄的bin中
3. 應用程序的web.config可以獨立於站點根目錄的web.config