到底HTTPS是什么?
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。
HTTPS和HTTP的核心区别是什么
http是超文本传输协议,是明文传输;而https 则是具有安全性的ssl加密传输协议。
wordpress网站的HTTPS证书该如何选择?
这里给大家推荐使用阿里云服务器申请CA_SSL数字证书。
wordpress网站在改造HTTPS时遇到的常见问题
这些问题通常都是wordpress主题出现的问题,所以解决方法也就是在主题文件中做调整和修复即可,以下将自己在全站https化wordpress时遇到的问题及解决方面罗列出来希望对大家有帮助,有其它的问题也可以联系大家一起沟通。
wordpress全局HTTPS后,主题内引用http路径的js和css失效
我们在wordpress主题文件夹内找到functions.php ,添加如下代码,即可自动将http转为https
//开启https加载js和css
// wordpress强制跳转https后,JS/CSS不加载的解决方案
add_filter('script_loader_src', 'agnostic_script_loader_src', 20,2);
function agnostic_script_loader_src($src, $handle) {
return preg_replace('/^(http|https):/', '', $src);
}
add_filter('style_loader_src', 'agnostic_style_loader_src', 20,2);
function agnostic_style_loader_src($src, $handle) {
return preg_replace('/^(http|https):/', '', $src);
}
接着如果我们使用上面的转为方式后,发现网站后台不能打开;我们需要找到wordpress程序根目录中的wp-config.php文件,底在文件底部加入以下代码:
/* wordpress后台编辑网站地址http改成https后,后台进不去解决办法。
$_SERVER['HTTPS'] = 'on';
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
wordpress全站https化,文章内容中的百度分享代码出错;
虽说百度要大力支持https,但是百度分享这个功能已经有几年没有人维护过了,所以对于这种长期的遗留问题各位wordpress站长只有自己动手来解决了。
第一步,通过以下地址下载百度分享JS文件,解压得到static文件夹,上传到wordpress网站的根目录中,地址:https://github.com/hrwhisper/baiduShare
第二步,把调用jS的http://bdimg.share.baidu.com/删掉即可。
图片替换成https
修改wp_options表的siteurl和home为https格式。
update wp_options set option_value="https://www.qimuyun.cn" where option_value="http://www.qimuyun.cn";
修改wp_posts表的链接内容。
UPDATE wp_posts SET post_content=REPLACE(post_content,'http://www.qimuyun.cn/','https://www.qimuyun.cn/') WHERE 1
以上就是wordpress完成https常见的一些问题及解决方法。
下面就IIS服务器说下https证书的布置。
一、下载对应服务器类型证书
我的是IIS8,故选择IIS 7/8。点击“下载证书for IIS7/8”。
![图片[1]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_1.jpg)
二、安装SSL证书
1、上传至服务器
将下载好的证书压缩包上传至服务器。
2、证书的导入
开始>运行>MMC。再依次点击“文件”>“添加或删除管理单元”>“证书”>“计算机账户”>“下一步”>“添加”。
![图片[2]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_2.jpg)
打开“证书”>右键“个人”>“所有任务”>“导入”。
![图片[3]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_3.jpg)
右下角勾选“个人信息交换(*.pfx;p12)”。选择类型为“Personal Information Exchange”的文件即可。
![图片[4]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_4.jpg)
打开之后,选择下一步,勾选“根据证书类型,自动选择证书存储”,然后点击下一步。
![图片[5]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_5.jpg)
点击完成与成功导入。
![图片[6]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_6.jpg)
![图片[7]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_7.jpg)
空白处刷新,确认已成功导入。
![图片[8]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_8.jpg)
3、分配服务器证书
在IIS8中找到需要绑定的域名,点击后,找到右上角的“绑定”,最后点击“添加”。
![图片[9]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_9.jpg)
首先选择类型为“https”,然后填写域名,最后填写SSL证书。确定即可。
![图片[10]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_10.jpg)
4、测试效果
将首页、栏目页和内容页进行了几个浏览器的效果测试,均有安全网站标志。
![图片[11]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_11.jpg)
三、HTTP到HTTPS的301跳转
方法一、URL重写
1、URL重写
在Windows2012服务器上的IIS8中,已经安装好URL重写模块(如未,先进行安装),双击点开。
![图片[12]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_12.jpg)
2、添加空白规则
在右侧选择“添加规则”,并选择“空白规则”。
![图片[13]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_13.jpg)
3、编辑入站规则
编辑规则如下。名字随便起。
模式(T):(.*)
条件输入(C): {HTTPS}
添加条件的模式(T):off
![图片[14]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_14.jpg)
操作类型选择“重定向”。
重定向URL: https://{HTTP_HOST}/{R:1}
重定向类型:永久(301)。
最后点击右侧窗体的“应用”。
![图片[15]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_15.jpg)
方法二、web.config
1、复制如下代码到web.config
新建一个txt文档,如新建文档.txt 改名为 web.config 。注意一定要改后缀。修改完后,用文本文档打开或nodepad++等编辑软件打开,后复制下面进入,保存。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
<rule name="WordPress: http://luoshanren.cn" patternSyntax="Wildcard">
<match url="*" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
2、上传web.config文件到网站根目录
情况1:网站无web.config文件,那么直接复制进来即可。
情况2:如果网站根目录已经有这个文件,请不要覆盖,需要合并两个文件中的内容。
例如,我用的是WordPress博客系统,已经设置了固定链接,已经存在了web.config,那么此时,如果这个文件被覆盖,网站将只能正常访问主页。
原有文件代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="WordPress: https://www.qimuyun.cn" patternSyntax="Wildcard">
<match url="*"/>
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
</conditions>
<action type="Rewrite" url="index.php"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
两个文件代码整合后如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
<rule name="WordPress: https://luoshanren.cn" patternSyntax="Wildcard">
<match url="*"/>
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
</conditions>
<action type="Rewrite" url="index.php"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
3、修改302为301
本来上传或替换web.config文件后,就完成了,我发现,在URL重写模块中是302跳转,虽然长期效果应该差不多,不过还是建议改为301吧。
![图片[16]-【网站优化】WP引用http路径的js和css失效及详解IIS8下HTTPS的折腾过程-七木云](https://pengnaiming.nos-eastchina1.126.net/%E7%AC%94%E8%AE%B0%E6%95%99%E7%A8%8B/2045-%E8%AF%A6%E8%A7%A3IIS8%E4%B8%8BHTTPS%E7%9A%84%E6%8A%98%E8%85%BE%E8%BF%87%E7%A8%8B/2045_16.jpg)
四、HTTPS改造后续工作
1、检查网站是否可以正常访问
检查前,将浏览器的浏览记录全部删除,不然缓存可能会影响测试的结果。
尽量能够全面检查所有类型的页面。
检查首页 | https://www.qimuyun.cn |
检查分类页 | https://www.qimuyun.cn/dlxx |
检查文章页 | https: //www.qimuyun.cn/1657.html |
IIS网站日志分析详解检查标签页 | https: //www.qimuyun.cn/tags |
检查单页面 | https://www.qimuyun.cn/smzz |
一、F12找出资源是http的手动修改即可。
二、找不出问题或量大修改不方便,推荐一款名叫“SSL不安全内容修复器”的插件,安装SSL不安全内容修复器(SSL Insecure Content Fixer) 后,其默认配置将会被激活并自动启用“简单”等级的操作以执行一些基本的修复。您可以根据您网站的需要选择其他配置以获得更全面的修复。其实默认使用就能解决大多数基本问题,有个“弊端”,启用后如果后台登录不上,不要着急,可以稍等一下再试,也可删掉插件!插件的好处在于不用设置复杂的代码步骤,这个就看个人喜好了。
感谢您的来访,获取更多精彩文章请收藏本站。

暂无评论内容