使用Typecho && VPS搭建轻量级博客

最近由于使用了Hexo的静态博客,深感静态页面的Blog简介高效,好管理,非常的Geek。就想着能不能找到一个轻量级的仿照WP的博客框架。最终发现了Typecho,其实还是非常符合我的意愿的:小巧、简介、有后台发布系统。说开始就开始,准备搭建,开始了无尽的踩坑之旅

环境问题

确保有:

安装过程

正常情况通过上面的流程,这样安装就完成了,前后台都能登录上去了。But 我遇到了非常多的坑,记录下,可能可以帮助他人。

踩坑

前台正常显示,任何的链接都可以打开,除了后台/admin/xxxx.php

遇到这个问题也挺奇怪的,大多数网上的网友朋友都是因为配置伪静态的缘故,但要是这个错误的话前后台都是会变成404。

接着我通过浏览器的开发者模式看到报错是500,去看了看nginx的log正常,php的log默认没有开启,打开后仍然没有log。这时候我尝试着重启了下php,解决。2333

service php-fpm restart

本以为完事大吉了,接着出现了下面的错误。

所有的admin/xxx.php都是空白页,返回码是200

这个我就蒙圈了,怎么会返回正常但是没有页面内容呢?so,step through

<?php
echo ‘0’;
if (!defined('__DIR__')) {
define('__DIR__', dirname(__FILE__));
}
echo ‘1’;
define('__TYPECHO\_ADMIN__', true);
echo '2';

if (!defined('__TYPECHO\_ROOT\_DIR__') && [email protected]\_once __DIR__ . '/../config.inc.php') {
file\_exists(__DIR__ . '/../install.php') ? header('Location: ../install.php') : print('Missing Config File');
exit;
}
echo ‘3';

结果发现3没有被输出出来,把问题缩小到if语句中。

从上面的代码可以定位到是if语句造成的问题,看一看定义根目录好像出了问题。仔细的查看后,发现忽略了一个问题。

在我下载Typecho后,copy到网站根目录的时候,修改了一次文件夹名称,导致了目录出现问题

解决方案也非常的简单,重新安装一遍就可以解决这个了

Wrodpress博客迁移

由于我之前是通过WP来写作博客的,所以我需要把之前的数据全部导入到Typecho中。

官方的文档,写的还是非常的蛋疼的,戳这里(http://docs.typecho.org/plugins/wordpress-to-typecho "戳这里"),几句话说完了。实际的过程中,发现还有一个非常重要的步骤:WP博客的服务器的数据库远程连接的功能必须要开启。方法很简单:

like this

注:这里我犯了一个错误,试图给远程的帐号一个root权限,一直报错。回头想一想,逻辑上来说ACL不会这么设计

配置下属性,在数据库地址中填入你实际的远程链接地址。

like this

接着就可以开始迁移了,我大概有60多篇文章,3w多条评论,不到1分钟就迁移完了,速度还是不错的。

插件安装

安装插件也比较方便,但是很不幸的是官方没有一个插件市场,需要自己手动的去程序猿交友网站github去找寻。

这里有很多插件,按照需要clone下来,传到typecho中的usr/plugins里面就好了,在后台,去启用这个插件就完成了。

目前我使用的:SmartSpam&Syntax Highlighter,就已经够了。

Published with Ghost | Moegi