URL在iframe上没有指向https

在我们的网站中,我们正在加载一个在http(cdn.instantcal.com)上工作的calnedar api函数。 当加载这个网站在我们的WordPress的网站与https不工作,并得到一个错误:

“混合内容:” https://www.geo.com/wp-admin/post.php?post=362&action=edit “页面通过HTTPS加载,但请求一个不安全的资源” http://cdn.instantcal .com / cvj.html '。此请求已被阻止,内容必须通过HTTPS提供。“

为了解决我们的Nginx代理服务器中的混合iframe问题,我们在https://client.geopc.com上configuration了一个新的站点,代理cdn.instantcal.com。

server { listen 443; server_name calendar.geopc.com; location / { proxy_pass http://cdn.instantcal.com; proxy_set_header Host cdn.instantcal.com; proxy_set_header X-Real-IP $remote_addr; } } 

然后在Iframe中,我们给了url

 <iframe id="cv_if5" src="https://calendar.geopc.com/cvir.html?id=citus.com%2F60dcfe0d8c42638%2Fcalendar.ics&amp;theme=RE&amp;ccolor=%23ffffc0&amp;dims=1&amp;gtype=cv_daygrid&amp;gcloseable=0&amp;gnavigable=1&amp;gperiod=day7&amp;itype=cv_simpleevent" width="780" height="600" frameborder="0" scrolling="no"></iframe> 

但在Iframe中,我们得到了同样的错误

混合内容:“ https://www.geo.com/wp-admin/post.php?post=362&action=edit ”页面通过HTTPS加载,但请求不安全的资源“ http://calendar.geopc”。 com / cvj.html?idcloseable = 0&gnavigable = 1&gperiod = da '。 此请求已被阻止; 内容必须通过HTTPS提供。

当我们通过https直接访问urlcalendar.geopc.com时,它在https上正常工作。 但请让我知道这是什么问题? 它是在Iframe上还是在Nginx上。 任何人都可以帮助我们吗?

第一个问题是, iframe源URL是一个HTTP URL,在HTTPS页面请求时,浏览器会阻止该URL。 通过您的proxy_pass设置, iframe源URL是一个HTTPS URL,可以删除问题的一部分。

但是,通过代理从日历服务加载的代码需要更多资源,并且它们具有通过HTTP请求的原始服务的直接URL。

您需要获得支持HTTPS的日历服务或实现您自己的日历服务,没有其他方法可以解决此问题。