今天说一说今天博客搬家的折腾过程,以及出现500的解决方法。
首先把原来的typecho文件用winscp全部复制到本地,接着把数据库blog全部导出。
我的环境仍然用的是lnmp1.3。
新的主机环境搭建好了,然后新建虚拟主机。
把域名解析过来,开始我的域名在万网,修改解析不方便,所以把域名dns换成了DNSPOD的了。
等了快一个小时,域名终于解析正常了。。。。
然后开心的打开域名rayu.me
首页出现
500 Database Query Error
我的内心是崩溃的。然后一顿折腾。
检查了好多遍config.inc.php和原来的一样。然后什么重写规则也都和原来的配置一样,很是无语。。。
我改了数据库表里面的typecho_options
把站点名称改了新的域名,500.也是醉了。
继续在网上发现有的说是数据库类型变了,
要把
config.inc.php 里面的54-55行左右的数据库类型Mysql改为Pdo_Mysql,
/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
改好了,心里很激动,结果随便点了一篇文章,全是404。。。心碎一地。
然后再继续找问题,心想应该是PHP版本不一样吧,原来的版本是5.3左右,现在都7.0了。
结果发现网上有人也遇到过这个问题,
需要把/usr/local/nginx/conf/主机配置文件里面的东西修改一下
-
#include enable-php.conf;改为 include enable-php-pathinfo.conf;
最后就可以正常访问博客的每个界面了,和原来博客的内容一模一样了。
果然故事都是喜欢一波三折。
就这样记录一下吧!!!
最后贴上config.inc.php和站点conf的配置文件。
config.inc.php
<?php
/**
* Typecho Blog Platform
*
* @copyright Copyright (c) 2008 Typecho team (http://www.typecho.org)
* @license GNU General Public License 2.0
* @version $Id$
*/
/** 定义根目录 */
define('__TYPECHO_ROOT_DIR__', dirname(__FILE__));
/** 定义插件目录(相对路径) */
define('__TYPECHO_PLUGIN_DIR__', '/usr/plugins');
/** 定义模板目录(相对路径) */
define('__TYPECHO_THEME_DIR__', '/usr/themes');
/** 后台路径(相对路径) */
define('__TYPECHO_ADMIN_DIR__', '/admin/');
/** 设置包含路径 */
@set_include_path(get_include_path() . PATH_SEPARATOR .
__TYPECHO_ROOT_DIR__ . '/var' . PATH_SEPARATOR .
__TYPECHO_ROOT_DIR__ . __TYPECHO_PLUGIN_DIR__);
/** 载入API支持 */
require_once 'Typecho/Common.php';
/** 载入Response支持 */
require_once 'Typecho/Response.php';
/** 载入配置支持 */
require_once 'Typecho/Config.php';
/** 载入异常支持 */
require_once 'Typecho/Exception.php';
/** 载入插件支持 */
require_once 'Typecho/Plugin.php';
/** 载入国际化支持 */
require_once 'Typecho/I18n.php';
/** 载入数据库支持 */
require_once 'Typecho/Db.php';
/** 载入路由器支持 */
require_once 'Typecho/Router.php';
/** 程序初始化 */
Typecho_Common::init();
/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', 'typecho_');
$db->addServer(array (
'host' => 'localhost',
'user' => 'root',
'password' => '',
'charset' => 'utf8',
'port' => '',
'database' => '',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);
conf配置文件
-
server { listen 80; #listen [::]:80; server_name rayu.me; index index.html index.htm index.php default.html default.htm default.php; root /home/wwwroot/rayu.me; include typecho.conf; #error_page 404 /404.html; #include enable-php.conf; include enable-php-pathinfo.conf; location ~ .*\.(php|php5)?$ { # comment try_files $uri =404; to enable pathinfo # try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; include pathinfo.conf; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } access_log off; }