【问题标题】:Facebook Share Button breaks my SSL/HTTPSFacebook 分享按钮破坏了我的 SSL/HTTPS
【发布时间】:2012-03-04 16:40:36
【问题描述】:

Facebook 分享按钮会中断我在 Chrome 中的 SSL/HTTPS 连接。 Chrome 正在显示一个红色的 HTTPS,并在 https 上显示一个 (/) 斜杠。

它的状态:

您与 XXXXXXXXXX.com 的连接已使用 256 位加密进行加密。但是,此页面包含其他不安全的资源。这些资源可以在传输过程中被其他人查看,并且可以被攻击者修改以改变页面的行为。

连接使用 TLS 1.0

使用 AES_256_CBC 对连接进行加密,使用 SHA1 进行消息身份验证,使用 DHE_RSA 作为密钥交换机制

连接未压缩。

我该如何解决这个问题?下面列出了我的 Facebook 代码:

name="fb_share" 
share_url="https://mysexywear.com/product_details.php?prodId=<?php echo $prodId;?>&catId=<?php echo $catId;?>" 
href="https://www.facebook.com/sharer.php">Share

src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"

【问题讨论】:

标签: facebook ssl https


【解决方案1】:

尝试使用相对协议,如下所示:

name="fb_share" share_url="//mysexywear.com/product_details.php?prodId=&catId=" href="//www.facebook.com/sharer.php">

【讨论】:

    【解决方案2】:

    试试这个网址 ;)

    https://facebook.com/connect.php/js/FB.Share
    

    【讨论】:

    • @newtostackoverflow,这个 URL 运行良好!你说的不对,那就意味着整个facebook.com 的证书无效,事实并非如此!
    • 因为不能用 Chrome 和 IE,所以出现证书问题,小心。
    • 我自己在生产网站“sajilni.com”中尝试过,所有平台都没有问题,请先检查一下。
    【解决方案3】:

    src="https://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"

    这肯定行吗?

    【讨论】:

    • 更好的是完全省略方案名称以允许浏览器使用当前方案,如下所示://static.ak.fbcdn.net/connect.php/js/FB.Share
    • chrome 和 firefox 不加载这个。因为这个 SSL 证书是无效的。有什么选择..?? @JuicyScripter
    • @newtostackoverflow,Facebook 共享器已弃用,停止使用!如果您确实需要使用旧的、已弃用(在某些情况下已损坏)的功能,它仍然位于 //facebook.com/connect.php/js/FB.Share
    【解决方案4】:

    使用此代码:

    <script>
       function fbs_click() 
           {
               u=location.href;
               t=document.title;window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');
                 return false;
           }
    </script>
    <style> 
        html .fb_share_link {  
           height:18px; 
           display:block; 
           float:right; 
           margin-top:1px; 
           width:57px; 
           background:url(https://www.kiraguru.com/images/fbshare.png) no-repeat top left;   
          }
    </style>
    
    <a rel="nofollow" href="http://www.facebook.com/share.php?u=<;url>" onclick="return fbs_click()" target="_blank" class="fb_share_link"></a>
    

    更改“https://www.kiraguru.com/images/fbshare.png”字段并更改自定义设计的样式代码。

    !!!重要 -> 您必须使用 https:// 共享按钮图像。

    谢谢。

    【讨论】:

      【解决方案5】:

      将此链接引用到共享按钮 JavaScript 代码将在每个主要 Web 浏览器中返回安全证书错误警告: https://static.ak.fbcdn.net/connect.php/js/FB.Share

      在 Facebook 解决该问题之前,在通过 https 提供服务的网站中使用 JavaScript 实现的“分享”按钮是不可能获得令人满意的用户体验的。

      我建议两种解决方法之一:

      1) 通过创建共享 URL 并将其应用于图像来实现“假”共享按钮:

      <a href="https://www.facebook.com/sharer.php?u=http%3A%2F%2Fwww.your_url_encoded_webaddress.com" target="_blank">
        <img src="../images/Share_Button.png" border="0" />
      </a>
      

      2) 使用 Facebook 未弃用的社交插件之一(“赞”或“发送”)来实现类似的功能。这两个仍然完全支持并通过 https 工作: http://developers.facebook.com/docs/plugins/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-11-25
        • 2011-09-23
        • 2019-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多