前言#
この数日、阿里云からの通知を受け取り、仮想ホストの期限が切れることを知らせられました。更新するかどうか考えていたところ、実はすべてのウェブサイトを一緒にまとめたいと思っていました。結局、vultr の VPS を持っているので、これらのウェブサイトを配置することに問題はありません。主な問題は、登録が必要なことです。これは本当に厄介です。。登録がなければ国内の CDN サービスを利用できず、自分のミニプログラムも正常に動作しなくなります。これはかなり気まずいことです。その後、考えた結果、まずはアメリカの VPS に置いておくことにしました。将来的に国内のクラウドサーバーに移行することを検討するつもりですが、その際には再度登録が必要になるでしょう。
そういえば!もう一つ非常に重要な理由があります。。。それは私のドメインが me であり、国内では登録できないことです。
以下は、今回のサーバー移行の過程と遭遇したいくつかの問題についての記録です。同じ問題に直面している仲間に役立つかもしれません。
原始网站数据备份#
- FTP ツールを使用して、ウェブサイトのすべてのデータをパッケージ化してダウンロードします。
- 阿里云に付属のデータベース管理ツールを使用して、すべてのデータベースをバックアップします。すべてのテーブル!utf8 エンコーディング!
2.1 ここで注意が必要なのは、古いデータベースを新しいサーバーにインポートする際に、エラーが発生したことです。
T FOREIGN_KEY_CHECKS = 0;
mysql の外部キー制約を起動および停止する方法で、削除すれば大丈夫です。
- 方法(データベース管理ツールのコマンドラインで実行)
SET FOREIGN_KEY_CHECKS = 0
SET FOREIGN_KEY_CHECKS = 1
エラーがなければ、通常通り操作を続けてください。上記のエラーが発生した場合は、上記のコマンドを実行してから再度データベースをエクスポートしてください。
新服务器部署#
私のサーバーは centos7 で、宝塔をデプロイしました。もう 9102 年なのに、まだコマンドラインを叩いているのです!!(主に私が怠け者だから。。。)
-
宝塔に付属のワンクリックデプロイソースツールを使用して、typecho を直接デプロイします!以前の php バージョンが 5.5 だったので、ここでも 5.5 を選択しました。これ以上の問題を避けるためです!
-
デプロイが成功したら、PHPmyadmin に入り、すべてのテーブルを削除します!その後、以前バックアップしたデータベースをインポートします!500 エラーが発生した場合は、config.inc.php が正しく設定されているか確認してください。
-
ウェブサイトのバックエンドでアドレスの書き換え(擬似静的機能)を無効にします。
-
ウェブサイトのアドレスを http に変更します。
-
古い typecho の usr ディレクトリを新しいウェブサイトのルートディレクトリにインポートして置き換えます!
-
宝塔管理パネルで擬似静的を有効にします(typecho を選択するだけで OK です)。
-
typecho のウェブサイトバックエンドで擬似静的を有効にします(擬似静的の設定が正しい場合は強制的に有効にします)。
-
ウェブサイトのアドレスを https に変更します。
-
宝塔で https を有効にします。私は cloudflare の証明書を使用しており、証明書のデプロイが成功した後、強制的に https にリダイレクトします!
内容替换#
一部の古いデータはハードコーディングされているため、例えば最初の画像のアドレスなど、この場合は手動で置き換える必要があります。データが少ない場合は手動で修正できますが、ここには数十件の変更が必要なので、コマンドを使用して変更します。数秒の作業です。
- typecho_fields テーブル名
- str_value フィールド名
大まかな意味:テーブル名が typecho_fields で、フィールド名 str_value の内容を blog.45share.com から adao.me に置き換えます(blog.45share.com はブログの旧アドレスです)。
UPDATE typecho_fields SET str_value = replace(str_value, 'blog.45share.com', 'adao.me')