百度站内搜索轻松支持HTTPS网站站内搜索图文方法教程

http的网站改造为https后,原来百度站内搜索不支持https解决方法。

原来http的网站使用百度站内搜索(https://zn.baidu.com),安装SSL安全证书后将http改为https后,百度站内搜索失效了。根本原因为站内搜索代码不再不支持HTTPs了。

比如原来thinkcss网站为http://www.thinkcss.com,在网站顶部搜索,升级为https://www.thinkcss.com,输入关键字点击搜索,不能转到搜索http://s.thinkcss.com,而是又打开http://www.thinkcss.com,经过多次试验,改动最小实现了https网站的百度站内搜索功能。

特点:解决方法很简单。

直接看原来的代码:

<form action="">
<input type="text" id="bdcsMain" value="搜索CSS疑问" onFocus="if (value =='搜索CSS疑问'){value =''}" onBlur="if (value ==''){value='搜索CSS疑问'}">
<input type="submit" value="搜索" class="input-bottom" >
</form>
<script type="text/javascript">(function(){
document.write(unescape('%3Cdiv id="bdcs"%3E%3C/div%3E'));
var bdcs = document.createElement('script');bdcs.type = 'text/javascript';
bdcs.async = true;bdcs.src = 'http://znsv.baidu.com/customer_search/api/js?sid=12646226687798686566' +
 '&plate_url=' + encodeURIComponent(window.location.href) + '&t=' + Math.ceil(new Date()/3600000);
var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(bdcs, s);})();</script>

以上的HTML表单代码是自己的,只是根据百度站内要求对输入框添加 id="bdcsMain",其它表单代码根据需求设置布局;
JS代码为百度站内提供原代码,没有改变过(每个百度站内账号不同,sid是不同,需要注意,thinkcss的JS与您的是不同的,需要从百度站内搜索后台获取)。

修改方法:
1、对搜索按钮表单添加代码:
onClick="window.open('http://s.thinkcss.com/cse/search?s=12646226687798686566&entry=1&q='+document.getElementById('bdcsMain').value)"

因为搜索结果页我在百度站内搜索后台设置自己二级域名“s.thinkcss.com”,所以需要修改为您的二级域名(如果没有设置,就用百度提供搜索结果页HTTP地址)。需要注意search?s=12646226687798686566这串数字(登录百度站内搜索后获取自己的),修改为您百度提供JS的相同。

获取数字号
获取站内搜索的各自唯一的数字号

2、将JS代码去掉http

去掉百度站内搜索代码提供JS代码中http:
去掉百度站内搜索代码提供JS代码中“http:”。

3、这样即可完成改造,实现HTTPS网站轻松使用百度站内搜索功能。

操作完美改造总结:
1、按钮表单加入一段代码(注意数字串号使用您的)。
2、去掉百度站内搜索JS代码中http:,(http://znsv.baidu.com变成//znsv.baidu.com)。

posted @ 2018-09-26 17:38  chinaifne  阅读(3285)  评论(0编辑  收藏  举报