相信不少博主的WordPress都搭建在虚拟主机中,一般是Linux虚拟主机。但是,我们没有办法对虚拟主机进行控制,毕竟不是独立服务器。

我在西部数码搭建的博客,linux主机,可以方便的开启SSL,但要做到完美就没那么简单了。

开启SSL后,除了在后台的常规设置中将网站网址的http换成https之外,还必须在.htaccess文件中增加301跳转。

WordPress安装后的默认.htaccess文件内容是这样的,这是伪静态跳转,也就是WordPress中设置“固定链接”样式时,就通过这个文件进行链接跳转:

我的网站增加了https跳转后的.htaccess文件如下:

如果仅仅是这样,WordPress只是可以通过https打开了,但css、js等文件依然是http格式的,会出现网站板式错乱,加载错误等各种问题。

因此,还需要在wp-config.php文件中增加一些内容进行说明。值得注意的是,增加内容的位置很关键。必须放在 require_once( ABSPATH . 'wp-settings.php' ); 以上。如下所示:

把里面的域名换成自己的域名即可。

或者用以下代码,就不需要再设置自己的域名了,比较方便:

注意,说明一下这段代码的含义:

  • $_SERVER['HTTPS']='on'; 是告诉WordPress强制开启https,包括各种css、js也开启https。只加上这一句,网站应该已经能正常访问了,板式也不会错乱了。但是,还没有结束。
  • define('WP_HOME','https://www.taho.space'); define('WP_SITEURL','https://www.taho.space');
    或者 define('WP_HOME', 'https://'.$_SERVER['HTTP_HOST']); define('WP_SITEURL', 'https://'.$_SERVER['HTTP_HOST']);
    是告诉博客后台登陆时调用的css文件位置在哪。如果没有这两句,登陆后台时将会板式错乱,甚至显示“抱歉,您不能访问此页面。”等问题。不加这两句,网站的访问其实已经正常了。如果你的网站没有出现这种类似问题,就不必加上。

这下,网站访问应该就没问题了,前台后台都正常了。

发表评论

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