2011-09-08 41 views
5

Tôi có một khách hàng, do các lý do cụ thể, cần phải đặt một trang IFRAME trỏ đến trang HTTPS trên trang HTTP. Trang HTTP được lưu trữ trên một tên miền và máy chủ khác với trang HTTPS, nhưng cả hai đều thuộc sở hữu của cùng một máy khách.IFRAME an toàn được lồng trên trang không an toàn

Bỏ qua các lý do tại sao này nên không được thực hiện, tôi thấy khó thực hiện trong thực tế.

Như người ta có thể thấy trên trang này: http://www.clevelandutilities.com/obppay.htm có một HTTPS IFRAME trên trang HTTP mà không có bất kỳ cảnh báo nào từ trình duyệt (Firefox HOẶC IE). Tuy nhiên, nếu tôi thử phương pháp tương tự, cả Firefox và IE đều phàn nàn về chứng chỉ.

Bất kỳ ý tưởng nào về lý do đó là gì? Tôi đã kiểm tra nguồn tại trang web mẫu đó và có thể thấy không có gì đặc biệt được thực hiện, nhưng nếu tôi cố gắng cùng một điều tôi nhận được squawking. Hơn nữa, nếu tôi đặt tên miền mà họ đang sử dụng (https://www.paybill.com/cu/), nó không phàn nàn - nếu tôi đặt tên miền của chúng tôi, nó than phiền. Tất cả chứng chỉ SSL có được tạo bằng nhau không?

Để đun sôi nó xuống, điều này hoạt động mà không cảnh báo:

<iframe src="https://www.paybill.com/cu/" width="100%" height="600" scrolling="auto"></iframe> 

này không:

<iframe src="https://www.myclientdomain.com/somepage.php" width="100%" height="600" scrolling="auto"></iframe> 

Hơn nữa, chúng tôi sử dụng một IFRAME kiểu ứng dụng Facebook để ống để cùng này HTTPS và THAT hoạt động mà không có khiếu nại về chứng chỉ SSL. Huh?!

+0

Khi bạn truy cập nguồn iframe ('https: // www.example.com/somepage.php'), bạn có gặp lỗi chứng chỉ không? Có thể chứng chỉ CA không được tin cậy. Nó cũng có thể giúp đỡ nếu bạn có thể đưa ra thông báo lỗi - là nó không đáng tin cậy CA, thời gian hết hạn, sai tên miền, vv? – mjec

+0

Chúng tôi đã tìm ra, đăng lý do dưới đây nếu bạn tò mò./facepalm –

Trả lời

6

Sau khi đào một chút, chúng tôi phát hiện ra rằng chứng chỉ là cụ thể cho www .myclientdomain.com, và các nhà phát triển phụ trách đã sử dụng ...src="https://myclientdomain.com"... trong IFRAME. Đây là gây ra sau "Kết nối là không tin cậy" màn hình báo lỗi:

Untrusted error screenshot

Các thực tế phổ biến cho các tên miền máy chủ là không bao giờ sử dụng 'www' trong URL (bắt buộc với .htaccess), trong khi tiêu chuẩn cho miền nguồn (một với chứng chỉ) là luôn sử dụng nó (được thực thi bằng .htaccess). Đó là những gì khiến nhà phát triển khác rời khỏi nó - đó là những gì anh ta đã quen với trang web của mình.

Nếu một người nhấp vào "Tôi hiểu các rủi ro" ngay cả một lần cho miền nguồn và thêm ngoại lệ chứng chỉ, bất kỳ lượt truy cập nào sau đó đã chuyển sang htaccess và được chuyển hướng đến www-, đó là lý do tại sao (và của nhà phát triển khác) trang máy tính sẽ tải tốt và kiểm tra bình thường trong Firebug trong khi ông chủ của chúng tôi nhận được cảnh báo. Chúng tôi đã có cả hai (rõ ràng) thêm ngoại lệ cho một trong những lý do này hay cách khác trong quá khứ.

Khi chúng ta đặt nó lại với nhau, đó là khoảnh khắc thực tế. Cảm ơn bất cứ ai đã đưa ra câu hỏi này, xin lỗi vì đã không kiểm tra cẩn thận chi tiết. :)