记一次迁移typecho到新主机出现的问题和解决方法

时间: | 分类: 其他分类

笔者购买了新的VPS,需要将博客迁移到新主机上,记录一下迁移出现的问题

旧主机:
php57
mariadb57
apache

新主机:
php7.1
mysql57
nginx

首先是整个目录拷贝过去,然后将数据库dump出来导入到新主机上,但是打开页面时出现Database error,这是由于php7.0已经抛弃了Mysql的接口,需要用Pdo_Mysql代替。

修改typecho的配置文件config.inc.php

$db = new Typecho_Db('Mysql', 'typecho_');

修改为:

$db = new Typecho_Db('Pdo_Mysql', 'typecho_');

之后成功打开了首页,但是点击文章就会下载到php的源码,需要修改nginx的location字段。

打开虚拟主机的配置文件,修改PHP的location字段:

location ~ \.php$ 

修改为:

location ~ .*\.php(\/.*)*$ 

然后在这个location段中加入:

fastcgi_split_path_info ^(.+?\.php)(/.*)$;

笔者修改后的配置文件,供参考

location ~ .*\.php(\/.*)*$  {
    root /var/www/html/xxxxxxxx/blog.flannep.com/;
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

之后重启nginx即可使用

(还是wordpress好,改天迁移过去(
file_2073210.jpg


centos Nginx typecho



白咲美绘瑠's blog