1. 首页
  2. Wordpress教程

如何正确地将WordPress从HTTP移动到HTTPS(初学者指南)

您是否希望将WordPress从HTTP移至HTTPS并在您的网站上安装SSL证书 ? 我们收到了很多有关此主题的请求,因为Google宣布从2018年7月开始,Chrome浏览器将开始标记所有没有SSL的网站。在本文中,我们将向您展示如何通过添加以下内容将WordPress从HTTP正确移动到HTTP SSL证书。

Moving WordPress from HTTP to HTTPS / SSL

如果您不知道SSL或HTTPS是什么,请不要担心。 我们也要解释一下。

什么是HTTPS?

HTTPS或安全HTTP是一种加密方法,用于保护用户浏览器与服务器之间的连接。 这使得黑客更难以窃听连接。

我们每天都会与不同的网站分享我们的个人信息,无论是购买还是只是登录。

为了保护数据传输,需要创建安全连接。

这就是SSL和HTTPS进入的时候。

每个站点都会获得一个唯一的SSL证书,用于识别目的。 如果服务器假装使用HTTPS,并且其证书不匹配,则大多数现代浏览器将警告用户连接到该网站。

Insecure website warning

现在您可能想知道,为什么我需要将我的WordPress网站从HTTP移动到HTTPS,如果它是一个简单的博客或小型企业网站,不收取任何付款。

为什么需要HTTPS和SSL?

去年,谷歌宣布了一项计划,通过鼓励网站所有者从HTTP切换到HTTPS来提高整体网络安全性。 作为此计划的一部分,他们广受欢迎的Chrome网络浏览器会在2018年7月开始将所有没有SSL证书的网站标记为“不安全”。

Chrome HTTP Not Secure

作为公告的一部分,谷歌还表示,拥有SSL的网站也将看到SEO优势和更高的排名。 自去年以来,大量网站已从HTTP切换到HTTPS。

谷歌一直在慢慢推出Chrome中的“不安全”警告。 例如,如果有人使用隐身窗口访问HTTP网站,则会将其标记为“不安全”。 如果有人在常规模式下访问HTTP网站并尝试填写联系表单或其他表单,则该网站将被标记为不安全。

当您的读者和客户看到此通知时,会给您的业务留下不好的印象。

这就是为什么所有网站都需要从HTTP移动到HTTPS并立即安装SSL。

更不用说,如果您想在电子商务网站上在线接受付款,那么您需要SSL。

Stripe ,PayPal Pro,Authorize.net等大多数支付公司都会要求您在接受付款之前建立安全连接。

我们为我们的网站使用SSL,包括WPBeginner, OptinMonster, WPForms和MonsterInsights 。

在WordPress站点上使用HTTPS / SSL的要求

在WordPress中使用SSL的要求不是很高。 您需要做的就是购买SSL证书,而您可能已经免费获得。

最好的WordPress托管公司为所有用户提供免费的SSL证书:

  • BlueHost的
  • SiteGround
  • WPEngine
  • 液体网
  • Dreamhost的
  • InMotion托管
  • GreenGeeks

有关更多详细信息,请参阅我们的指南,了解如何获取WordPress网站的免费SSL证书 。

如果您的托管公司未提供免费的SSL证书,那么您需要购买SSL证书。

我们建议使用GoDaddy,因为它们是世界上最大的域名注册服务,管理着超过7600万个域名。

通过从他们那里购买SSL证书,您还可以获得McAfee安全封条。

购买SSL证书后,您需要请求您的托管服务提供商为您安装。

设置WordPress以使用SSL和HTTP

在域名上启用SSL证书后,您需要设置WordPress以在您的网站上使用SSL和HTTPs协议。

我们将向您展示两种方法,您可以选择最适合您需求的方法。

方法1:使用插件在WordPress中设置SSL / HTTPS

这种方法更容易,建议初学者使用。

首先,您需要安装并激活Really Simple SSL插件。

激活后,您需要访问设置»SSL页面。 该插件将自动检测您的SSL证书,它将设置您的WordPress站点以使用HTTP。

SSL enabled on a WordPress website

该插件将处理包括混合内容错误在内的所有内容。 这是插件在幕后的作用:

  • 检查SSL证书
  • 将WordPress设置为在URL中使用https
  • 设置从HTTP到HTTP的重定向
  • 查找仍在从不安全的HTTP源加载的内容中的URL并尝试修复它们。

注意:插件尝试使用输出缓冲技术来修复混合内容错误。 它可能会对性能产生负面影响,因为它正在加载页面时替换站点上的内容。 这种影响仅在第一页加载时出现,如果您使用缓存插件,它应该是最小的。

虽然该插件表示您可以保留SSL并安全地停用该插件,但这并非100%正确。 您必须始终保持活动状态处于活动状态,因为停用插件会带来混合内容错误。

方法2:手动设置WordPress中的SSL / HTTPS

此方法要求您手动解决问题并编辑WordPress文件。 然而,这是一种永久性且性能更优化的解决方案。 这就是我们在WPBeginner上使用的内容。

如果您发现此方法很难,那么您可以聘请WordPress开发人员或使用第一种方法。

作为此方法的一部分,您可能需要编辑WordPress主题和代码文件。 如果您之前没有这样做,请参阅我们的指南, 了解如何在WordPress中复制和粘贴代码段 。

首先,您需要访问设置»常规页面。 从这里,您需要通过用https替换http来更新WordPress和站点URL地址字段。

Update WordPress URLs

不要忘记点击“保存更改”按钮来存储您的设置。

保存设置后,WordPress会将您注销,然后系统会要求您重新登录。

接下来,您需要通过将以下代码添加到.htaccess文件中 ,将WordPress重定向从HTTP设置为HTTPS。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
</IfModule>

不要忘记用您自己的域名替换example.com。

如果您使用的是nginx服务器(大多数用户不是),那么您需要在配置文件中添加以下代码以从HTTP重定向到HTTPS:

server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}

不要忘记用您自己的域名替换example.com。

通过执行这些步骤,您将避免WordPress HTTPS无法正常工作的错误,因为WordPress现在将使用https加载整个网站。

如果要在WordPress管理区域或登录页面上强制使用SSL和HTTPS,则需要在wp-config.php文件中配置SSL。

只需在wp-config.php文件中的“全部,停止编辑!”行上方添加以下代码:

define('FORCE_SSL_ADMIN', true);

此行允许WordPress在WordPress管理区域中强制使用SSL / HTTP。 它也适用于WordPress多站点网络。

完成此操作后,您的网站现已完全设置为使用SSL / HTTPS,但您仍会遇到混合内容错误。

这些错误是由仍使用URL中的不安全HTTP协议加载的源(图像,脚本或样式表)引起的。 如果是这种情况,那么您将无法在网站的地址栏中看到安全的挂锁图标。

Not secure

许多现代浏览器会自动阻止不安全的脚本和资源。 您可能会在浏览器的地址栏中看到挂锁图标,但会显示相关通知。

Insecure content blocked

您可以使用Inspect工具找出通过不安全协议提供的内容。 混合内容错误将在控制台中显示为警告,其中包含每个混合内容项的详细信息。

Mixed content errors displayed in browser console

您会注意到大多数URL是图像,iframe和图像库,而有些URL是由WordPress插件和主题加载的脚本和样式表。

修复WordPress数据库中的混合内容

大多数不正确的URL将是存储在WordPress数据库中的图像,文件,嵌入和其他数据。 我们先解决它们。

您需要做的就是在以http开头的数据库中查找旧网站URL的所有提及,并将其替换为以https开头的新网站URL。

您可以通过安装和激活Better Search Replace插件轻松完成此操作。 有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。

激活后,您需要访问工具»更好的搜索替换页面。 在“搜索”字段下,您需要使用http添加您的网站网址。 之后,在“替换”字段下添加https网站网址。

Search and replace

在此之下,您将看到所有WordPress数据库表。 您需要选择所有这些以进行彻底检查。

最后,您需要取消选中“Run as dry run?”选项旁边的框,然后单击“Run Search / Replace”按钮。

该插件现在将在您的WordPress数据库中搜索以http开头的URL,并将其替换为安全的https URL。 可能需要一段时间,具体取决于您的WordPress数据库大小。

修复WordPress主题中的混合内容错误

导致混合内容错误的另一个常见罪魁祸首是您的WordPress主题。 遵循WordPress编码标准的任何体面的WordPress主题都不会导致此问题。

首先,您需要使用浏览器的Inspect工具来查找资源以及从哪里加载资源。

Using inspect tool to find mixed content error

之后,您需要在WordPress主题中找到它们并用https替换它们。对于大多数初学者来说,这将有点困难,因为您将无法看到哪些主题文件包含这些URL。

修复插件引起的混合内容错误

一些混合内容资源将由WordPress插件加载。遵循WordPress编码标准的任何WordPress插件都不会导致混合内容错误。

我们不建议编辑WordPress插件文件。相反,您需要联系插件作者并让他们知道。如果他们没有回复或无法修复,那么您需要找到合适的替代品。

注意:如果由于某种原因,您仍然遇到混合内容错误,那么我们建议您暂时使用Really Simple SSL插件,以便在您在暂存网站上修复问题或聘请开发人员时不会影响您的用户。

将您的HTTPS站点提交到Google Search Console
谷歌等搜索引擎将https和http视为两个不同的网站。这意味着您需要让Google知道您的网站已经移动以避免任何SEO问题。

为此,您只需转到Google Search Console帐户,然后点击“添加媒体资源”按钮即可。

Add https site as a new property in Google Search Console

这将弹出一个弹出窗口,您需要添加网站的新https地址。

Add your https URL

之后,Google会要求您验证您网站的所有权。 有几种方法可以做到这一点,选择任何方法,然后您将获得验证网站的说明。

Verify your website

验证您的网站后,Google会在此处开始显示您的搜索控制台报告。

您还需要确保在Search Console中添加了https和http版本。

同时拥有这两个版本后,您需要转到Google Search Console中的http版本,然后点击“设置”菜单。 从那里,您需要选择“更改站点地址”选项。

Google Search Console Change of Site Address

Google会在下面的字段中自动选择您的新网站,但如果没有,则需要选择您网站的https版本,然后提交更改地址请求。

这告诉Google您希望将您网站的https版本视为主要版本。 结合您之前设置的301重定向,Google会将您的搜索排名转移到您网站的https版本,您很可能会看到搜索排名的改进。

我们知道我们在将网站从http切换到https时就做了。

我们希望本文能帮助您在WordPress中添加HTTPS和SSL。

原创文章,作者:懒咪WP,如若转载,请注明出处:https://www.lanmit.com/1100.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据