首页 > 未分类 > 博客最终还是换服务器了, 记录几个wordpress迁移的问题

博客最终还是换服务器了, 记录几个wordpress迁移的问题

后遗症:  友链全没了, 只能慢慢手动补充。  以前的文章格式全挤在一起。 评论从倒序莫名其妙变成正序。

 

本来是用的阿里云共享虚拟主机,   60一年, 价格很香。

结果三天两头就发短信给我说超标,  受不了了,  哎。

 

 

现在我给他改到我手上的另一台服务器上了,折腾了好久,  因为也是阿里云家里的服务器, 还好不用备案。

途中遇到了wordpress全站 HTTPS 问题和代码高亮插件报错 (Crayon Syntax Highlighter) 问题。

 

 

HTTPS:

这个坑主要是 CDN  HTTPS 和我实际上服务用的 HTTP 有冲突导致

 

我是用的 Nginx 代理到实际上的 wordpress 上,   用的是 HTTP 形式访问的。

 

就算更改了选项:

WordPress地址(URL)   https://www.skypyb.com
站点地址(URL)   https://www.skypyb.com

 

也没什么卵用。  访问是修复成 HTTPS 了, 可是请求静态资源还是 HTTP ,  就全部样式雪崩。

研究了好一会才弄好,  这个主要是因为 wp 还是认为你是HTTP 访问导致的,  需要在 wp-config.php 中强制将请求信息改成 HTTPS 。

 

 

这是推荐的做法, 可我试了并没有用处。   我 Nginx 转发时是设置了对应的请求头的。

// If WordPress is behind reverse proxy
// which proxies https to http
if ( (!empty( $_SERVER['HTTP_X_FORWARDED_HOST'])) ||
     (!empty( $_SERVER['HTTP_X_FORWARDED_FOR'])) ) {
 
    // http://wordpress.org/support/topic/wordpress-behind-reverse-proxy-1
    $_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];
 
 
    // http://wordpress.org/support/topic/compatibility-with-wordpress-behind-a-reverse-proxy
    $_SERVER['HTTPS'] = 'on';
}

 

上边的判断进不去,  我只能直接使用下面这段强行开启HTTPS

$_SERVER['HTTPS'] = 'on';

 

 

 

Crayon Syntax Highlighter 报错

我以前用的就是 Crayon Syntax Highlighter 这个代码高亮插件,  这玩意还是挺好用的就是太老了, 也一直没更新,  几种新的编程语言高亮都不支持。

我的 WP 自然用的是最新版的,  也不知道为啥这个插件一安装就直接报错雪崩。  去各种地方搜了最终还是没能搞定。

干脆不解决了,  直接换一个更NB的得了。

 

所以我换成了 Enlighter ,  这个可以自定义选择器, 真的NB

主要改几个选项:

  • Option – Block CSS Selector 设置为 pre.EnlighterJSRAW, pre[class*="lang:"][class~="decode:true"]
  • Option – Inline CSS Selector设置为 code.EnlighterJSRAW, span[class*="lang:"][class~="decode:true"][class~="crayon-inline"]
  • BETA – Dynamic Resource Invocation (DRI) 需要关闭

 

就可以完美兼容  Crayon Syntax Highlighter的DOM格式

 

 

 

目前 wordpress 跑在 docker 上边, 还是挺嗨的, 以后要是再迁移就很方便了。  打个镜像就完事, 不折腾。

不过阅读量全部消失还是有点难受的……

 

 

 

 

           


EA PLAYER &

历史记录 [ 注意:部分数据仅限于当前浏览器 ]清空

      00:00/00:00