WordPress网站免费SSL证书申请及配置教程

作者 : King 本文共6914个字,预计阅读时间需要18分钟 发布时间: 2025-05-10 共85人阅读

SSL证书申请及配置教程

在WordPress网站上安装SSL证书,既是顺应互联网发展之要求,也是网站信息加密之所需。

网站拥有SSL证书将启用HTTPS,这可确保不会以纯文本形式传递任何信息。我们建议所有站点都使用HTTPS,因为它具有除安全性之外的许多其他好处,如SEO、信任、避免浏览器警告等。

如何安装SSL证书

对于WordPress网站安装SSL(TLS)证书,知识兔小编仅针对最为常见的三种安装方式进行讲解。

选项1 –宝塔安装免费SSL证书

如果知识兔您的VPS服务器安装部署了宝塔控制面板,那安装免费SSL证书是一件非常简单的事情。

第1步

登录到宝塔控制面板后台,然后知识兔进入“网站”管理列表,找到你需要安装SSL证书的网站,知识兔点击操作“设置”。

宝塔网站设置

在宝塔控制面板中选择一个站点

第2步

使用宝塔面板安装SSL证书,主要推荐两种方式:宝塔SSL(1年免费TrustAsia DV SSL CA证书,期满可续订)或者Let’s Encrypt免费证书(3个月免费,可续订)。

(1)Let’s Encrypt证书安装

在网站设置弹窗窗口,知识兔点击左侧菜单“SSL”,然后知识兔切换至Let’s Encrypt标签项,知识兔选择验证方式为“文件验证”及勾选你需要安装SSL证书的“域名”,最后点击“申请”。

Let's Encrypt证书申请

申请后,稍等片刻,系统将会自动为您创建SSL证书并完成部署。

Let's Encrypt证书部署

注:

  • 申请之前,请确保域名已解析,如未解析会导致审核失败
  • Let’s Encrypt免费证书,有效期3个月,知识兔支持多域名。默认会自动续签
  • 若您的站点使用了CDN或301重定向会导致续签失败
  • 在未指定SSL默认站点时,未开启SSL的站点使用HTTPS会直接访问到已开启SSL的站点
  • 如开启后无法使用HTTPS访问,请检查安全组是否正确放行443端口

(2)宝塔SSL证书安装

如果知识兔你嫌上面的Let’s Encrypt免费证书有效期过短(实际上可以续订),那也可以申请宝塔的SSL正式(该证书实际上是TrustAsia DV SSL CA – G5证书)。

首先你必须完成宝塔账号实名认证,否则无法由宝塔分享的1年免费的TrustAsia DV SSL CA – G5证书。

注:宝塔实名认证,知识兔可以是个人或者企业实名认证,其中个人实名认证务必保证手机号码、姓名和身份证三个信息准确,且手机号码不能为电信号码、携号转网号码(官方说的)。

同在网站设置弹窗窗口,知识兔点击左侧菜单“SSL”,然后知识兔切换至宝塔SSL标签项,知识兔选择你需要申请宝塔SSL的域名,知识兔点击“申请”。

TrustAsia DV SSL CA - G5证书申请

成功申请后,知识兔点击“部署”操作即可。(部署完成,同样会跳转至Let’s Encrypt标签页,这有点不太合理的交互)。

TrustAsia DV SSL CA - G5证书部署

注:TrustAsia DV SSL CA – G5证书1年有效期结束后不能够续签,需重新申请。

第3步

完成宝塔控制面板的SSL申请及部署后,知识兔建议启用强制HTTPS,以保证所有域名访问通过https。

宝塔强制HTTPS启用

选项2 –手动部署安装免费SSL证书

第一步 –申请免费的SSL证书

你可以通过Free SSL申请注册免费SSL证书。首先你得注册一个Free SSL的账号,然后知识兔登录Free SSL网站。在首页,输入你要申请免费SSL证书的域名,知识兔点击Create certificate

FreeSSL官网

在下一个步骤,无需理会任何选项,直接点“Next Step”

FreeSSL免费证书申请

然后知识兔,你可以选择90天或者1年的SSL证书,注意,这里千万不要选择第二个选项“1-Yeaar Certificate”,应该选择第一个“90-Day Certificate”

90天免费SSL证书

选择生成证书信息的方式,知识兔根据自己的实际情况选择,知识兔建议选择第三个“Fill in the information”:

  • EmailAddress-电子邮件地址
  • Organization-组织
  • Department-部门
  • City-城市/地区
  • State-省份
  • Country-国家

免费SSL证书信息填写

点击提交,浏览器将会下载自动生成一个私钥文件private key,将其保存到浏览器任意位置(后面最终步骤也会在下载的压缩包包含此文件)。

然后知识兔,知识兔选择第一个“Free”套餐(注:其他套餐都是付费套餐),知识兔点击“Next”,进入下一个步骤。

FreeSSL套餐选择

在下个页面,Free SSL还需要对域名进行验证,知识兔可以使用邮箱认证、DNS认证和上传文件认证,这里选择最为便捷的文件上传认证作为演示。

选择“HTTP File upload”,知识兔点击“Next”

FreeSSL域名验证

根据提示的信息创建一个txt文本,其中Auth value对应的值作为txt文本的内容,Auth path对应的值作为txt文件名,最后将创建好的txt文件上传至服务器网站根目录下的.well-known/pki-validation

FreeSSL域名验证-文件上传验证

然后知识兔点击“Verify Domain”,可能需要一小会的时间。

注:验证域名的时候,如失败,检查下Auth Path的URL是否能够正常访问。必须支持http访问才可以成功验证,如果知识兔启用了强制https,应临时取消。

验证成功后,知识兔点击Certificate列表对应域名右侧的操作项“Operation”下的“Download”,将会下载一个zip压缩包(包括一个key文件合一个pem文件)。

FreeSSL证书文件下载

第二步 –部署SSL证书

(1)宝塔面板部署Free SSL证书

如果知识兔你安装的是宝塔面板,则部署刚才在Free SSL申请的免费证书是一件非常简单的事情。

登录你的网站服务器的宝塔控制面板后台,知识兔点击(1)“网站”菜单,在网站列表中找到需要配置SSL的域名,知识兔点击(2)“设置”操作,然后知识兔在弹出窗口中(3)选择“其他证书”选项卡。

宝塔面板其他证书部署

然后知识兔将前面下载的压缩包文件解压得到两个文件:.key和.pem。使用记事本打开,将.key的文本内容复制粘贴到(4)key密钥,及将.pem的文本内容复制粘贴到(5)PEM格式证书,最后点击“保存”即可为网站配置SSL证书。

(2)自主部署Free SSL证书

如果知识兔服务器安装的是Nginx,则参考以下步骤进行SSL证书部署。

找到网站的Nginx的网站配置文件,可能存放在/usr/local/nginx/conf/vhost这样的目录下的域名.conf,不同服务器可能不尽相同。在网站的Nginx配置文件添加下列注释的行(相关信息替换成自己网站的):

 

server{ #在80端口监听行下方增加443端口监听 listen 443 ssl http2; #如果知识兔需要http跳转https,在域名指向目录下方增加下面规则,注意将域名更换为自己的域名 if ($http_host !~ "^bt\.wbolt\.com$") { rewrite ^(.*) https://bt.wbolt.com$1 permanent; } #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则 #error_page 404/404.html; #填写.pem证书的存放路径,注意将证书保存路径改为自己服务器的路径 ssl_certificate /usr/local/nginx/conf/ssl/bt.wbolt.com/bt.wbolt.com.pem; #填写私钥的存放路径,注意将证书保存路径改为自己服务器的路径 ssl_certificate_key /usr/local/nginx/conf/ssl/bt.wbolt.com/bt.wbolt.com.key; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m;}

如果知识兔服务器安装的是Apache,则参照以下步骤进行SSL证书部署。

找到网站的Apache的网站配置文件,可能存放在/usr/local/apache2.4/conf/httpd.conf,不同服务器可能不尽相同。在网站的Apache配置文件添加下列行(相关信息需替换自己的):

 #网站路径、域名地址及Log路径均要替换成自己的 ServerAdmin webmaster@example.com DocumentRoot "/www/wwwroot/bt.wbolt.com/" ServerName SSL.bt.wbolt.com ServerAlias bt.wbolt.com #errorDocument 404 /404.html ErrorLog "/www/wwwlogs/bt.wbolt.com-error_log" CustomLog "/www/wwwlogs/bt.wbolt.com-access_log" combined #SSL 以下是配置SSL证书的信息,切记将证书文件路径及文件换成自己的 SSLEngine On SSLCertificateFile /usr/local/apache/conf/ssl/bt.wbolt.com/bt.wbolt.com.pem SSLCertificateKeyFile /usr/local/apache/conf/ssl/bt.wbolt.com/bt.wbolt.com.key SSLCipherSuite EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5 SSLProtocol All -SSLv2 -SSLv3 -TLSv1 SSLHonorCipherOrder On #PHP  SetHandler "proxy:unix:/tmp/php-cgi-56.sock|fcgi://localhost"  #DENY FILES  Order allow,deny Deny from all  #PATH 网站路径需替换成自己网站的路径  SetOutputFilter DEFLATE Options FollowSymLinks AllowOverride All Require all granted DirectoryIndex index.php index.html index.htm default.php default.html default.htm 

选项3 –使用Cloudflare或Sucuri安装SSL证书

Cloudflare和Sucuri是所谓的反向代理服务。您可以将它们视为中间人。您将DNS指向他们,然后知识兔他们将您的请求路由到网站服务器。因此,需要采取一些其他步骤来确保正确安装SSL证书。

使用Cloudflare

Cloudflare允许通过HTTPS加载网站的两种不同方式:Flexible或者Full (Full strict)。

  • Flexible-允许Cloudflare与网站服务器之间通过HTTP(未加密)连接,并且知识兔不需要SSL证书。
  • Full需要Cloudflare和网站服务器之间通过HTTPS(加密)连接。

第1步:在Cloudflare中,切换至“Crypto”选项卡,然后知识兔关闭SSL(也建议将Cloudflare设置为development mode(开发模式),直到网站服务器的SSL准备就绪为止。您可以通过overview面板上的快速操作来执行此操作。)

cloudflare关闭SSL

在Cloudflare中关闭SSL

第2步:通过前面的教程在网站服务器的宝塔安装免费SSL证书手动部署安装免费SSL证书

第3步:一旦在网站服务器上成功安装了SSL证书,请将Cloudflare的加密级别设置为Full或Full(严格),以便从网站服务器到客户端浏览器的连接一直被加密。

cloudflare完全SSL加密模式

将Cloudflare的SSL模式设置为“Full”。

第4步:然后知识兔清除Cloudflare缓存。而且知识兔,如果知识兔您将网站置于开发模式,请确保将其设置为活动状态。

清除Cloudflare缓存

清除Cloudflare缓存

使用Sucuri

您必须首先联系他们的客户,并让他们启用“forward certificate validation.”设置。这允许HTTPS设置成功完成。然后知识兔,您可以通过上述教程在网站服务器的宝塔安装免费SSL证书手动部署安装免费SSL证书

检查&续订SSL证书

(1)检查SSL证书

安装SSL证书后,知识兔建议您运行SSL检查以验证所有设置是否正确。

(2)续订SSL证书

不同的SSL证书,其续订方式不尽相同。

Let’s Encrypt免费SSL证书续订

通过宝塔控制面板申请的免费SSL证书(Let’s Encrypt),需要你在宝塔控制面板手动执行续订操作。点击“网站”,知识兔选择你需要续订SSL证书的网站域名,知识兔点击“设置”操作。

在弹出窗口点击“SSL”菜单,切换至“Let’s Encrypt”选项卡,知识兔点击“续签按钮。”

宝塔SSL续签操作

宝塔SSL免费证书续订

如果知识兔你是通过宝塔控制面申请的一年免费SSL证书,即TrustAsia DV SSL CA – G5证书。这个证书是无法续订的,必须在证书过期后重新申请。

Free SSL免费证书续订

如果知识兔申请的是Free SSL免费证书,那到期后,也是可以登陆freessl网站进行续订的。

注:如果知识兔您的站点使用了诸如Sucuri之类的反向代理后面,则必须与他们的客户支持部门联系,并让他们启用“forward certificate validation.”设置,以允许HTTPS更新成功完成。

强制HTTPS

宝塔控制面板强制HTTPS

安装SSL证书后,您可以在宝塔控制面板中选择“强制HTTPS”。此功能可以试想将所有HTTP请求转为HTTPS。

宝塔启用强制HTTPS

在宝塔控制面板开启强制HTTPS

手动配置强制HTTPS

如果知识兔你的网站服务器为Apache服务器,需要在网站的Apache配置文件添加下列行

#HTTP_TO_HTTPS_START HTTP请求强制跳转HTTPS RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule (.*) https://%{SERVER_NAME}$1 [L,R=301]#HTTP_TO_HTTPS_END

如果知识兔你的网站服务器为Nginx服务器,需要在网站的Nginx配置文件添加下列行

server { #如果知识兔需要http跳转https,在域名指向目录下方增加下面规则,注意将域名更换为自己的域名 if ($http_host !~ "^bt\.wbolt\.com$") { rewrite ^(.*) https://bt.wbolt.com$1 permanent; } }

其他注意事项

网站配置https,还需要注意的一些事项:

1.混合内容问题

混合内容问题,即在同一页面地址,同时使用了http和https两种协议请求资源。解决办法如下:

务必在WordPress仪表盘-设置,将WordPress地址和站点地址的URL改为https协议的URL地址,如下图所示:

WordPress地址及站点地址设置

然后知识兔确保WordPress主题设置里面的一些本域的URL地址更换成https协议的URL地址。

否则可能会造成跨域问题,启用了https也会在浏览器提示不安全。

完成上述操作,还是会提示跨域问题,知识兔可以通过查看源代码,找到非https协议的URL链接,再有针对性地去解决。

2.图片资源未能转为https协议链接问题

理论上,当你将WordPress地址和站点地址变更为https协议的URL地址后,这个问题会解决。

但也有可能存在特殊的情况。如果知识兔还是存在这样的问题,你可以尝试数据库批量替换命令来修复这一问题。

第1步:进入网站对应的phpMyAdmin;

第2步:在左侧数据库表选择网站对应的数据库名称;

第3步:点击顶部导航切换到“SQL”标签;

第4步:在运行SQL查询框输入下列命令行;

UPDATE wp_posts SET post_content = replace(post_content, 'http://你的域名','https://你的域名');

第5步:最后点击“执行”即可将文章内容http协议的知识兔URL替换为https协议。

注:操作数据库前务必先备份数据库。以防操作失误,可有备份供恢复。

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看下载!

如何免费获取密码?

点击下载

小鱼网是一个美好的开源学习社区,学习编程,学习WordPress,下载WordPress插件主题,
小鱼网 » WordPress网站免费SSL证书申请及配置教程

常见问题FAQ

发表回复

分享最优质的学习资料

立即查看 了解详情