У меня такие ситуации на отладчике объектов Facebook:
Это один, если я введу ссылку http
и этот для https-ссылки
Код моего расширения joomla:
<?php /*------------------------------------------------------------------------ # mod_ofblikebutton - Optimized Facebook Like Button # ------------------------------------------------------------------------ # author: Optimized Sense # copyright: Copyright (C) 2013 http://www.o-sense.com. All Rights Reserved. # @license: http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL # Websites: http://www.o-sense.com # Technical Support: http://www.o-sense.com/contact-us/support-inquiries.html -------------------------------------------------------------------------*/ // no direct access defined( '_JEXEC' ) or die( 'Restricted access' ); class oFBLikeButton{ function getData(&$params ){ $oFBLinkTitle = 'O-Sense'; $oFBLink = 'http://www.o-sense.com'; //$oFBLinkImg = 'http://www.o-sense.com/osensecopy.png'; //$oFlink = $params->get('olink');/// $oFBLink = JURI::current(); $oFshowSend = $params->get('oshowSend');/// $oFstyle = $params->get('ostyle'); $oFwidth = $params->get('owidth', '400');/// $oFfaces = $params->get('ofaces');/// $oFfont = $params->get('ofont');/// $oFcolor = $params->get('ocolor');/// $oFverb = $params->get('overb');/// $oFsource = $params->get('osource');/// $oFlang = $params->get('olang');/// if($oFfaces == '1'){ $oFfaces = 'true'; }else{ $oFfaces = 'false'; } if($oFshowSend == '1'){ $oFshowSend = 'true'; }else{ $oFshowSend = 'false'; } $data =''; if($oFsource == '1'){ //HTML5 $app = JFactory::getApplication(); $menu = $app->getMenu(); $lang = JFactory::getLanguage(); $fburl = 'https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; if($fburl == 'https://www.atlantotec.com/de/' || $fburl == 'https://www.atlantotec.com' || $fburl == 'https://www.atlantotec.com/de') { $pageurl = 'http://www.atlantotec.com/de/'; $spageurl = 'https://www.atlantotec.com/de/'; } else { $finalurls = explode('/',$_SERVER['REQUEST_URI']); $urls = ''; foreach ($finalurls as $finalurl){ if($finalurl != ''){ $urls .= '/'.$finalurl; } } if ($lang->getTag() == 'it-IT') { $pageurl = 'http://'.$_SERVER['HTTP_HOST'].$urls; $spageurl = 'https://'.$_SERVER['HTTP_HOST'].$urls; } else { $pageurl = 'http://'.$_SERVER['HTTP_HOST'].$urls; $spageurl = 'https://'.$_SERVER['HTTP_HOST'].$urls; } } $data = '<div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.5&appId=541263185976160"; fjs.parentNode.insertBefore(js, fjs); }(document, \'script\', \'facebook-jssdk\'));</script>'; $data = $data . '<div class="fb-like" data-href="'.$pageurl.'" data-layout="button_count" data-action="like" data-show-faces="true" data-share="true"></div>'; /*$url = 'http://api.facebook.com/restserver.php?method=links.getStats&urls='.$pageurl.','.$spageurl; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); $retrun = curl_exec($ch); curl_close($ch); $oXML = new SimpleXMLElement($retrun); $total_count=0; foreach($oXML->link_stat as $link_stat){ //if($total_count != $link_stat->total_count || $total_count ==0) $total_count += $link_stat->total_count; }*/ /*$data = '<div class="fb-like" data-href="'.$spageurl.'" data-layout="button" data-action="like" data-show-faces="false" data-share="true"></div>'; $data = '<div id="fb-root"></div><script language="javascript" type="text/javascript">(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$oFlang.'/all.js#xfbml=1"; fjs.parentNode.insertBefore(js, fjs);}(document, \'script\', \'facebook-jssdk\'));</script>'; $data = $data.'<script language="javascript" type="text/javascript">//<![CDATA[ document.write(\'<div class="fb-like" data-href="'.$pageurl.'" data-width="'.$oFwidth.'" data-colorscheme="'.$oFcolor.'" data-show-faces="'.$oFfaces.'" data-send="'.$oFshowSend.'" data-font="'.$oFfont.'" data-action="'.$oFverb.'" data-layout="button"></div><div class="pluginCountButton pluginCountNum"><div class="pluginCountButtonNub"><s></s><i></i></div><span id="fb-count">'.$total_count.'</span></div> \'); //]]> </script> <div style="display:none; position: relative; height: 15px; width: 100%; font-size: 10px; color: #808080; font-weight: normal; font-family: \'lucida grande\',tahoma,verdana,arial,sans-serif; line-height: 1.28; text-align: right; direction: ltr;"><a href="'.$pageurl.'" target="_blank" style="color: #808080;"> <img alt="OSense" src="'.$oFBLinkImg.'" style="visibility:visible; zoom: 1; opacity: 1; vertical-align: text-top;" /> '.$oFBLinkTitle.'</a></div>';*/ /*$data = $data.'<script language="javascript" type="text/javascript">//<![CDATA[ document.write(\'<div class="fb-like" data-href="'.$spageurl.'" data-width="'.$oFwidth.'" data-colorscheme="'.$oFcolor.'" data-show-faces="'.$oFfaces.'" data-send="'.$oFshowSend.'" data-font="'.$oFfont.'" data-action="'.$oFverb.'" data-layout="'.$oFstyle.'"></div> \'); //]]> </script> <div style="display:none; position: relative; height: 15px; width: 100%; font-size: 10px; color: #808080; font-weight: normal; font-family: \'lucida grande\',tahoma,verdana,arial,sans-serif; line-height: 1.28; text-align: right; direction: ltr;"><a href="'.$spageurl.'" target="_blank" style="color: #808080;"> <img alt="OSense" src="'.$oFBLinkImg.'" style="visibility:visible; zoom: 1; opacity: 1; vertical-align: text-top;" /> '.$oFBLinkTitle.'</a></div>';*/ }else if($oFsource == '2'){ //XFBML $data = '<div id="fb-root"></div><script language="javascript" type="text/javascript">(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$oFlang.'/all.js#xfbml=1"; fjs.parentNode.insertBefore(js, fjs);}(document, \'script\', \'facebook-jssdk\'));</script>'; $data = $data.'<script language="javascript" type="text/javascript">//<![CDATA[ document.write(\'<fb:like href="'.$oFlink.'" width="'.$oFwidth.'" colorscheme="'.$oFcolor.'" show_faces="'.$oFfaces.'" font="'.$oFfont.'" send="'.$oFshowSend.'" layout="'.$oFstyle.'" action="'.$oFverb.'"></fb:like> \'); //]]> </script> <div style="display:none; position: relative; height: 15px; width: 100%; font-size: 10px; color: #808080; font-weight: normal; font-family: \'lucida grande\',tahoma,verdana,arial,sans-serif; line-height: 1.28; text-align: right; direction: ltr;"><a href="'.$oFBLink.'" target="_blank" style="color: #808080;"> <img alt="OSense" src="'.$oFBLinkImg.'" style="visibility:visible; zoom: 1; opacity: 1; vertical-align: text-top;" /> '.$oFBLinkTitle.'</a></div>'; }else { //iFrame $oFsource ="http://www.facebook.com/plugins/like.php?locale=".$oFlang."&href=".$oFlink."&width=".$oFwidth . "&colorscheme=".$oFcolor."&show_faces=".$oFfaces . "&send=".$oFshowSend."&layout=".$oFstyle."&font=".$oFfont."&action=".$oFverb."&height=26"; $data = '<iframe src="'.$oFsource.'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.$oFwidth.'px; height:26px;" allowTransparency="true"></iframe> <div style="display:none; position: relative; height: 15px; width: 100%; font-size: 10px; color: #808080; font-weight: normal; font-family: \'lucida grande\',tahoma,verdana,arial,sans-serif; line-height: 1.28; text-align: right; direction: ltr;"><a href="'.$oFBLink.'" target="_blank" style="color: #808080;"> <img alt="OSense" src="'.$oFBLinkImg.'" style="visibility:visible; zoom: 1; opacity: 1; vertical-align: text-top;" /> '.$oFBLinkTitle.'</a></div>'; } return $data; } }
И код .httaccess:
RewriteEngine on Options +FollowSymLinks # # HTTPS Redirect RewriteCond %{HTTP_HOST} !^www\.atlantotec\.com$ RewriteRule ^(.*)$ https://www.atlantotec.com/$1 [L,R=301] RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] RewriteRule ^(.*)=it$ http://www.atlantotec.com/it/$1 [R,NC] RewriteRule ^(.*)=de$ http://www.atlantotec.com/de/$1 [R,NC] RewriteRule ^(.*)=en$ http://www.atlantotec.com/en/$1 [R,NC]
То, что я хочу сделать, – это передать ссылку http и показать акции из http-ссылки, в этот момент я могу поделиться ссылкой http, но я вижу https-акции.
В отладчике объектов Facebook вы можете увидеть, проверяю ли я ссылку http, которую я вижу на https-ресурсах, если я проверю ссылку https, я вижу общие папки http.
Я удалил уже канонический тег, но не работает, если вы считаете, что это вариант.
Итак, как делиться http и видеть http-сайты, а не https?
Я просто проверил ваш сайт, и главная проблема с вашим сайтом заключается в том, что вы перенаправляетесь с http на https, но og: url установлен в версию http: //. Проверьте код HTML, и вы увидите следующее:
<meta property="og:url" content="http://www.[yourdomain].com"/>
Это запутывает Facebook, вы должны иметь og: url как http, когда находитесь в режиме http, и как https whe вы находитесь в режиме https.
PS: Я все еще вижу это в коде …
<link href="/de/" rel="canonical" />
… но я не думаю, что это вредно.