Trang chủ > Chứng Thư Số SSL > [ Windows ] IIS7.5 Cài đặt nhiều tên miền sử dụng chứng thư số trên cùng IP và port

[ Windows ] IIS7.5 Cài đặt nhiều tên miền sử dụng chứng thư số trên cùng IP và port

Trên các phiên bản IIS của hệ điều hành windows (IIS6, IIS7 và IIS7.5) , các hạn chế của IIS là IIS chỉ cho phép bạn sử dụng một trang web cho một IP với cùng một Port kết hợp sử dụng chứng chỉ SSL. 
Nếu bạn cố gắng để cài đặt một trang web thứ hai trên địa chỉ IP với cùng một PORT, IIS sẽ thông báo cho bạn một lỗi khi khởi trang web lên nói rằng có sự tranh chấp Port trên cùng địa chỉ IP đó.



(Nguyên nhân bạn có thể xem tại đây.)

- Tạm thời TENTEN tóm tắt lại lý do như sau: Máy chủ HTTP của IIS chỉ có thể cho phép một trang web cho mỗi địa chỉ IP với cùng một Port kết hợp để duyệt HTTPS. 
Nếu bạn cần phải sử dụng một trang web khác trên HTTPS thì bạn cần phải xử lý theo 02 phương thức cơ bản sau: 
+ Hoặc là sử dụng thêm một địa chỉ IP khác đang không sử dụng đến PORT 443 
+ Hoặc thay đổi port sử dụng SSL trên website tiếp theo khác với Port đã tồn tại.
- Đôi khi thêm một địa chỉ IP mới hoặc thay đổi cổng cho mỗi trang web sẽ tốn kém và khó sử dụng.
- Tuy nhiên ngoài cách cơ bản trên,  Để gán một chứng chỉ được sử dụng bởi nhiều trang web IIS trên cùng địa chỉ IP và cổng, chúng ta cần phải sử dụng một cơ chế đặc biệt. 
* Xin Lưu Ý: Phương pháp này chỉ có tác dụng với các tên miền sử dụng WildCard Certificate Và SAN
Chứng chỉ WildCard là chứng chỉ cho phép bạn sử dụng nhiều tên miền phụ với cùng một chứng thư số.Ví dụ chúng tôi có chứng chỉ cho *.tenten.vn, như vậy tất cả các tên miền phụ như: https://cpanel.tenten.vn, https://domain.tenten.vn, https://navi.tenten.vn chúng tôi đều sử dụng cùng chung một chứng chỉ này và được cài đặt trên nhiều máy chủ khác nhau.
- Cài đặt wildcard certificate mời bạn xem Tại đây

- Sau khi cài đặt chứng chỉ cho tên miền trên cùng IP, Bạn sẽ thấy rằng chỉ một tên miền được sử dụng trên port SSL mặc định (PORT 443), Các trang web khác sẽ ở trạng thái STOP.
Nếu cố gắng khởi động các trang web đó, bạn sẽ nhận được thông báo như TENTEN đã đề cập tới bên trên.
- Để xử lý lỗi này, Bạn cần thay đổi "Host Header" của các trang web khác nhau.
+ Mở Start
+ Nhấp chuột RUN
+ Gõ  cmd và nhấn Enter
+ Di chuyển đến thư mục: "C:\Windows\System32\inetsrv"
+ Thay đổi header của các trang web bằng lệnh sau:
appcmd set site /site.name:”<WEBSiteName>” /+bindings.[protocol='https',bindingInformation='*:443:<hostHeaderValue>']
Ví dụ: 
appcmd set site /site.name:"office-hn.tenten.vn" /+bindings.[protocol='https',bindingInformation='*:443:office-hn.tenten.vn']
appcmd set site /site.name:"office-hn.myvps.vn" /+bindings.[protocol='https',bindingInformation='*:443:office-hn.myvps.vn']