[IIS7] 如何架設多個網站

2014-02-18 IIS

這個月因某些因素大量的將Server的數量減少,並把可用的整併在同一台,其中更不乏遇到一些問題

採取的方式是用 Windows 7 去架設 Web 站台,並將大量的測試網站放在同一套 IIS ((正式上線的切勿這樣做))

在這台 Windows7上面就綁了好幾個 IP,並有數十個站台,其中有走 SSL的,這邊都使用多站台 (virtual host) 的方式解決

 

IIS 可以像 apache 的 virtual host 一樣,建立多站台,就是說用不同的網站名稱連接時,IIS會自動判斷要用哪一個設定去做對應

在建立過程中如果在啟動站台時遇到以下錯誤訊息

原因是建立兩個不同的站台時,他 listen port 已經被佔用了,造成站台無法啟動。
可以採用不同的「主機名稱」去做設定

範例一
## Default Web Site
HTTP 繫結 192.168.120.1
## WebSSLSite
HTTP 繫結 192.168.121.1

按照以上範例,把主機名稱錯開,就可以讓兩個站台同時啟動。

當使用者輸入192.168.120.1的時候,就會自動轉到 Default Web Site 這個站台,反之192.168.121.1 就去抓WebSSLSite。

反向思考,如果只有一個IP的話,也是可以設兩個 DomainName 使其解析到同一個 IP

範例二 FQDN解析同一IP
192.168.120.1      TestA
192.168.120.1      TestB

範例三

##Default Web Site
HTTP 繫結 127.0.0.1
## WebSSLSite
HTTP 繫結 localhost

上面這些都是方式之一唷

另外在設定HTTPS的時候,若多站台都要使用SSL而遇到下面無法輸入主機名稱的狀況怎麼辦?

因為HTTPS也是使用同一個連接埠443,首要必須去改 IIS 的設定檔,修改方法如下

SETP1. IIS 服務停止
SETP2. 用記事本打開 C:Windowssystem32inetsrvconfigapplicationHost.config

SETP3.
<site name=”WebSSLSite″ id=”2″>
<application path=”/” applicationPool=”WebSSLSite″>
<virtualDirectory path=”/” physicalPath=”D:WebSSLSite″ />
</application>
<bindings>
<binding protocol=”http” bindingInformation=”*:80:192.168.121.1” />
<binding protocol=”https” bindingInformation=”*:443:” />
</bindings>
</site>

找到 https 那一行 * 代表 IP位址位指派,443是port,冒號後面就是要輸入主機名稱,把他加進去
<binding protocol=”https” bindingInformation=”*:443:192.168.121.1” />

SETP4. 存檔,啟動IIS

參考資料

IIS 7 如何架設多個SSL網站

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱