网站转移至百度云虚拟主机 BCH 心得手记

网站转移至百度云虚拟主机 BCH 心得手记

转移至BCH大致遇到了以下四个问题:

1. Wordpress https开启问题

使用更安全的https做网站向来是笔者的习惯,通常来说使用VPS运行的wordpress开启SSL,只要在后台面板里将WordPress地址(URL)站点地址(URL)里的http修改成https,wordpress即会自动将网站所有的图片、js及css自动替换成https,非常简单。

然而当我将原本已开启https的网站迁移到虚拟主机后发现,所有的js和css都是http链接的,无法被浏览器默认加载。而且后台也无法访问,显示重定向次数过多无法被加载。

网上几经搜寻,终于找到以下解决方案。

找到Wordpress网站根目录的配置文件wp-config.php,在里面找下面这段代码:

/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */
/** WordPress目录的绝对路径。 */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

然后在上面这段代码的前一行,加入下面这段代码:

$_SERVER['HTTPS'] = 'ON'; //设置Wordpress全站开启HTTPS。

注意:前面的代码我特意用红色字体说明了代码必须要加在特定的位置,这个位置很关键,加错了位置(尤其是加在了后面的),绝对会出现全站无法通过HTTPS访问的后果。

加完代码后如下图所示:

网站转移至百度云虚拟主机 BCH 心得手记

保存wp-config.php文件,并用FTP上传覆盖。

再重新用HTTPS访问网站试试,如果没有其他问题的话,应该就完全正常了,包括前台网站内容页面和后台登陆及各种功能。

2. 伪静态开启问题

百度云主机配置伪静态有两种,主要取决于使用的web环境,目前支持的有Lighttpd和nginx,前者是在app.conf文件中配置的,后者是在bcloud_nginx_user.conf文件中配置。我所使用的BCH为后者,下面是nginx环境中wordpress伪静态的配置。

步骤如下:

1、可以自行创建配置文件,并保存为“bcloud_nginx_user.conf”,文件内容如下:

if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
    rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
    rewrite (.*) /index.php;
}

2、将配置文件上传到主机中

先将bcloud_nginx_user.conf上传至网站根目录下(即webroot目录)

上传完成后需要在BCH控制面板中重载一下站点,即可生效。

3. SMTP邮箱问题

BCH默认是屏蔽mail函数的,因此需要额外使用STMP来发邮件。

这里我所使用的是WPJAM插件,内附了STMP设置工具,修改起来还是很方便的。

4. 站点地图问题

原先的网站使用的是WordPress免插件生成完整站点地图(sitemap.xml)的php代码文中所提到的php站点地图+任务计划每天生成静态xml文件。但是因为迁到了虚拟主机,无法再使用任务计划,因此我改为使用插件来生成站点地图。这里我使用的是XML 站点地图 & 谷歌新闻订阅源这个插件。

本文参考以下网站:

四座博客:https://www.sizuo.org/wordpress-https.html

百度云文档:https://cloud.baidu.com/forum/topic/show?topicId=241555

服务器运维网站运维

轻松搭建个人网站教程(五)用Wordpress 快速搭建个人博客

2017-5-8 9:01:27

服务器运维系统运维

使用SSL证书为Windows(非Server)远程桌面RDP连接加密

2018-4-11 12:34:52

搜索