WordPressサイトを新しいホスティング会社または別のサーバーに移行する予定ですか?それは大きな決断であり、当然のことながら、潜在的なデータ損失やダウンタイムについての懸念があることでしょう。
私たちの経験では、これらは間違いなくウェブホスティングを変更したり、ウェブサイトを移行する際の最大のリスクです。しかし、ユーザーエクスペリエンスやアップタイムを損なうことなく、安全に新しいホストやサーバーに移行することができます。
実際、私たちは2020年にWPBeginnerのウェブサイトをHostGatorからSiteGroundに切り替えました。そのため、私たちは読者に悪影響を与えることなく、このプロセスを成功させてきました。
このステップバイステップのチュートリアルでは、ダウンタイムなしで安全に WordPress サイトを新しいホストに移行する方法を紹介します。また、新しいホスティングプロバイダーへの WordPress サイトの移行に関するよくある質問にもお答えします。
重要:始める前に、多くのWordPressホスティングサービス会社が無料の移行サービスを提供していることを知っておいてほしい。それは彼らのサイトに記載されていないかもしれないので、あなたがしなければならないすべては尋ねることです。通常は無料ですが、少額の料金を請求する場合もあります。
それでは、WordPressを新しいホスティングサーバーに(ダウンタイムなしで)移行するための手順を見ていきましょう:
準備はいいかい?始めよう
ステップ1:新規WordPressホスティングサービスを選ぶ
WordPressの速度とパフォーマンスを最適化しても、遅いホスティングサービスから抜け出せない場合は、WordPressサイトをトラフィックの増加に対応できる新しいホスティングサービスに移行する時期です。
新しいWordPressホスティングサービスプロバイダーを探すときは、すぐに再移転する必要がないように慎重に選ぶことが重要です。
私たちが推薦する人物は以下の通りだ:
- 信頼性の高い共有ホスティングには、Bluehostをお勧めします。彼らはWordPress.orgによって公式に推奨されています。Bluehostのクーポンを使用すると、WPBeginnerユーザーは最大75%オフと無料のドメイン名を取得できます。
- より高速な共有ホスティングには、ホスティングサービスをお勧めします。彼らはトップWordPressホスティングカンパニーの一つであり、優れた顧客サポートでより高速なサーバーを提供しています。
- クラウドホスティングサービスや 場所限定のプロバイダーを探しているなら、SiteGroundをチェックすることをお勧めします。3つの大陸にデータセンターがあります。
- マネージドWordPressホスティングサービスをお探しなら、WP Engineをチェックすることをお勧めします。業界で最も有名なプロバイダーです。
新しいホスティングサービスを購入したら、WordPressをインストールしないでください。それは後のステップで行います。
今のところ、新しいウェブホスティングサービスアカウントは、メインディレクトリにファイルやフォルダーがない空の状態でなければなりません。
ステップ2:Duplicatorをセットアップして簡単に移行する
最初に行う必要があるのは、移動したいサイトにDuplicatorプラグインをインストールして有効化することです。詳しくは、WordPressプラグインのインストール方法のステップバイステップガイドをご覧ください。
Duplicatorは市場で最高のWordPress移行プラグインです。また、自動スケジュールバックアップ、クラウドストレージサポート、1クリックリストア、スマートマイグレーションが付属しています。
注:DuplicatorにはDuplicator Liteという無料版もあります。これはあなたのウェブサイトを移動するために使用することができますが、プロバージョンに比べて機能が制限されています。
Duplicatorをインストールして有効化したら、WordPressの管理エリアにあるDuplicator ” Backupsページにアクセスしてください。
次に、左上にある「新規追加」ボタンをクリックします。
Duplicatorのバックアップウィザードが起動します。
次の画面では、バックアップの名前を入力するか、ダイナミックタグを使用して日付やサイトタイトルのような名前のフォーマットを自動的に作成することができます。
次に、’Storage’ セクションを展開し、ストレージの場所を選択します。このチュートリアルでは、デフォルトの場所を使用しますが、’ストレージを追加’リンクをクリックして、DropboxやGoogleドライブのような新しい場所を追加することができます。
次へ」ボタンをクリックしてください。
次に、Duplicatorはあなたのシステムをスキャンし、パッケージの準備に問題がないことを確認します。
スキャン結果がチェックアウトされたことを確認し(すべてが「Good」と表示されるはずです)、「Create Backup(バックアップの作成)」ボタンをクリックします。
処理が完了するまでに数分かかることがありますので、プラグインが作業を行う間、タブを開いたままにしておいてください。
プロセスが完了すると、インストーラーとアーカイブパッケージのダウンロードオプションが表示されます。Download」ボタンをクリックし、「Both Files」オプションを選択してください。
アーカイブファイルはあなたのサイト全体のコピーであり、インストーラファイルはあなたのためにインストールプロセスを自動化します。
ステップ3:新規ホスティングサービスにWordPressサイトをインポートする
アーカイブファイルとインストーラファイルの両方をダウンロードしたので、次のステップはそれらを新しいホスティングサービスにアップロードすることです。
これは、FTPを使用して新しいウェブホスティングサービスに接続することによって行うことができます。
この作業を行ったことがない場合は、WordPressにFTPでファイルをアップロードするための初心者向けガイドをご覧ください。
通常、FTPクライアントに接続する際、サイトのドメイン名をホスティングサービスとして入力します。
しかし、ドメインネームはまだ以前のホスティングサービスを指しているため、サーバーのIPアドレスまたはサーバーホスト名を入力して接続する必要があります。
この情報は、新しいホスティングアカウントのコントロールパネルのダッシュボードで確認できます。
この情報が見つからない場合は、新規に契約するホスティングサービス会社にサポートを依頼すれば、助けてくれるでしょう。
FTPクライアントを使用して、インストーラ.phpファイルとアーカイブ.zipファイルの両方をサイトのルートディレクトリにアップロードする必要があります。
これは通常、/username/public_html/
フォルダーです。
もし本当に〜してもよいですか?
ルートディレクトリが完全に空であることを確認してください。ホスティングサービスによっては、契約時にWordPressが自動的にインストールされるものもあります。
ルートディレクトリにWordPressがインストールされている場合は、まずWordPressを削除する必要があります。
それが完了したら、アーカイブZIPファイルとインストーラ.phpファイルの両方をサイトのルートディレクトリにアップロードする必要があります。
ステップ4:ダウンタイムを防ぐためにホスティングサービスファイルを変更する
両方のファイルを新しいホスティングサービスにアップロードしたら、インストーラ.phpファイルにブラウザーでアクセスする必要があります。
通常、このファイルには次のようなURLでアクセスできる:
http://www.example.com/installer.php
しかし、このURLでは古いホスティングサービスにアクセスすることになり、404エラーが表示されます。これは、ドメイン名がまだ古いホスティングサービスを指しているためです。
通常、他のチュートリアルではドメインのネームサーバーを変更し、新しいホスティングサービス会社を指定するように指示されるかもしれませんが、それは間違いです。
今これを行うと、サイトを移行する際に、訪問者は壊れたサイトを見ることになります。
旧サイトに影響を与えることなく、コンピューター上で新サイトに一時的にアクセスする方法をご紹介します。
これは、コンピューター上のホスティングサービスファイルで行います。
ホスティングサービスファイルは、ドメイン名を特定のIPアドレスにマッピングするために使用することができます。言い換えれば、ウェブサイトが移転していないにもかかわらず、移転しているとコンピューターに思い込ませることができる。
hostsファイルにドメイン名のエントリを追加して、新しいホスティングサービス会社を指すようにする方法を見てみましょう。
これらの変更を行うことで、新しいホスティングのファイルには独自のドメイン名でアクセスできますが、それ以外のサイトには古いホスティングからアクセスすることになります。これにより、100%のアップタイムが保証されます。
最初に行う必要があるのは、新しいウェブホスティングサーバーのIPアドレスを見つけることです。
これを見つけるには、cPanelダッシュボードにログインし、左側のサイドバーにある[expand stats]リンクをクリックする必要があります。サーバーのアドレスが「共有IPアドレス」として表示されます。
例えば、ホスティングサービスでは、ホスティングプランの詳細の下にサーバーIPアドレスがあります。
Windows PCをお使いの場合は、管理者権限でメモ帳アプリを開く必要があります。
スタート」ボタンをクリックし、メモ帳アプリを探します。メモ帳アプリのアイコンを右クリックし、「管理者として実行」を選択します。
WindowsのUACプロンプトが表示されますので、「はい」をクリックして管理者権限でメモ帳を起動します。
メモ帳画面で「ファイル」→「開く」を選択し、C:∕WindowsSystem32∕drivers∕etc
フォルダに移動する。このフォルダーからホスティングサービスファイルを選択して開きます。
Macを使用している場合は、Terminalアプリを開き、hostsファイルを編集するためにこのコマンドを入力する必要があります:
sudo nano /private/etc/hosts
WindowsユーザーもMacユーザーも、ホスティングサービスファイルの一番下に、コピーしたIPアドレスを入力し、ドメイン名を入力する必要があります。このように:
192.168.1.22 www.example.com
IPアドレスをcPanelからコピーしたものに、example.comを自分のドメイン名に置き換えることを本当に〜してもよいですか?
完了したら、変更を保存します。
これで、コンピューター上のドメイン名を使用して、新しいホスティング上のファイルにアクセスできるようになります。
重要移行が終わったら、hostsファイルに加えた変更を元に戻すことを忘れないでください(ステップ6)。
ステップ 5: 新規ホスティングサービスでの MySQL データベースの作成
新しいホストでインストーラを実行する前に、新しいホスティングアカウントでMySQLデータベースを作成する必要があります。すでにMySQLデータベースを作成している場合は、次のステップに進んでください。
cPanelでデータベースを作成する
新規ホスティングサービスのcPanelダッシュボードに移動し、「データベース」セクションまでスクロールダウンし、「MySQLデータベース」アイコンをクリックします。
新規データベースを作成するためのフィールドが表示されます。
データベースの名前を入力し、「Create Database」ボタンをクリックします。
MySQLデータベースを作成したら、MySQLユーザーセクションまでスクロールダウンする必要がある。
次に、新規ユーザーのユーザー名とパスワードを入力し、「Create User」ボタンをクリックします。
その後、このユーザーをデータベースに追加する必要があります。こうすることで、先ほど作成したユーザー名に、そのデータベースで作業するためのすべての権限が与えられます。
Add User to a Database(ユーザーをデータベースに追加)」セクションまでスクロールダウンしてください。ユーザーの隣にあるドロップダウンメニューから作成したデータベースユーザーを選択し、データベースを選択して「追加」ボタンをクリックします。
これでWordPressでデータベースを使用する準備が整いました。データベース名、ユーザー名、パスワードは本当に〜してもよいですか?次のステップで必要になります。
ステップ 6: Duplicator移行プロセスの開始
これでインストーラを実行する準備ができました。ブラウザーで、example.comをあなたのドメイン名に置き換えて、以下のアドレスにナビゲーションしてください:
http://www.example.com/installer.php
インストーラはいくつかのテストを実行し、アーカイブテストと検証テストの横に「Pass」と表示されます。
利用規約のチェックボックスにチェックを入れ、「次へ」ボタンをクリックして次に進みます。
ここで、MySQLホスティングサービス、データベース名、ユーザー名、パスワードの入力を求められます。
ホスティングサービスはおそらくlocalhostでしょう。その後、前のステップで作成したデータベースの詳細を入力します。
次に、Duplicatorはデータベースに接続でき、インストールを実行できることを確認する必要があります。
下にある’Validate’ボタンをクリックして次に進む。
Duplicatorが接続できれば、テスト結果はPassと表示されます。
これで、キーワードと注意事項にチェックを入れ、「次へ」ボタンをクリックすることができます。
Next(次へ)」ボタンをクリックして進みます。
DuplicatorはアーカイブZIPから新しいデータベースにWordPressデータベースをインポートします。
次に、サイトのURLまたはPathを更新するよう求められます。ドメイン名を変更するわけではないので、ここでは何も変更する必要はありません。
次へ」ボタンをクリックしてください。
Duplicatorは最後のステップを実行し、ログインボタンを表示します。
これで、新規ホスティングサービス上の WordPress サイトにログインして、すべてが期待どおりに動作していることを確認できます。
ステップ7:ドメインネームサーバー(DNS)の更新
この時点で、新しいホスティングサーバー上にWordPressデータベースとファイルの完全なコピーを作成しましたが、ドメインはまだ古いWebホスティングアカウントを指しています。
ドメインを更新するには、DNSネームサーバーを切り替える必要があります。これにより、ユーザーがあなたのドメインをブラウザーに入力したときに、あなたのサイトの新しい場所に移動できるようになります。
ホスティングサービスにドメインを登録した場合は、新しいホスティングサービスにドメインを移管するのがベストです。
一方、Domain.com、GoDaddy、Network Solutionsなどのドメイン登録業者を使用している場合は、ネームサーバーを更新する必要があります。
新しいウェブホスティングサービスのDNSネームサーバー情報が必要です。これは通常、次のような2、3のURLです:
ns1.hostname.com
ns2.hostname.com
このガイドでは、GoDaddyでDNSネームサーバーを変更する方法を説明します。
その他のホスティングサービスについては、ドメインネームサーバーの変更に関するガイドをご覧ください。
ドメイン登録業者やウェブホスティングサービスによっては、スクリーンショットが異なって見えるかもしれません。しかし、基本的なコンセプトは同じです。
ドメイン管理エリアを探し、ネームサーバーを探す必要があります。ネームサーバーの更新が必要な場合は、ホスティングサービス会社にお問い合わせください。
GoDaddyの場合は、GoDaddyアカウントにログインし、「ドメイン」をクリックする必要があります。
その後、変更したいドメイン名の横にある「管理」ボタンをクリックする必要があります。
追加設定」セクションに進む。
次に、’Manage DNS’(DNSの管理)をクリックして続行します。
次に、「ネームサーバー」セクションまでスクロールダウンする必要があります。
ここで「変更」ボタンをクリックする。
まず、ネームサーバーの種類ドロップダウンを「初期設定」から「カスタム」に切り替える必要があります。
その後、ネームサーバーの下に新しいホスティングサービスの情報を入力することができます。
保存」ボタンをクリックして変更を保存することを忘れないでください。
ドメインのネームサーバーの変更が完了しました。DNSの変更は、すべてのユーザーに反映されるまでに4~48時間かかります。
旧ホスティングサービスと新ホスティングサービスには同じコンテンツがあるため、ユーザーには何の違いもわかりません。WordPressの移行は、ダウンタイムなしでシームレスに行われます。
安全面を考慮し、移行から7日後まで旧ホスティングサービスアカウントのキャンセルを待つことをお勧めします。
よくある質問
WordPress をホスティングサービスから別のホスティングサービスに移行する際に、多くのユーザーから寄せられる質問をご紹介します。
1.WordPressサイトを他のホスティングサービスに移行するにはどうすればよいですか?
WordPressファイルとデータベースを古いホスティングサービスから新しいホスティングサービスに移動することで、WordPressサイトを移行することができます。
ホスティングサービス会社によっては、無料のサイト転送サービスも提供していますが、問い合わせが必要です。または、FTPクライアントを使用してファイルを転送し、phpMyAdminを介してデータベースをインポートすることにより、自分で行うこともできます。
2.WordPress サイトを他のホスティングサービスに移行できますか?
はい、WordPressサイトを他のホスティングサービスに移行することは自由です。
3.ドメイン名を登録せずに新しいホスティングサービスにサインアップできますか?
はい、ドメイン名を登録しなくてもホスティングサービスに申し込むことはできます。
ドメイン名とホスティングサービスは2つの異なるサービスであり、ホスティングサービスに新規登録する際に必ずしもドメイン名を登録する必要はありません。詳しくは、ドメイン名とホスティングサービスの違いをご覧ください。
ホスティングサービスプロバイダーによっては、ホスティングサービスを購入する際、最初のステップとしてドメイン名を選択するよう求められます。また、すでにドメイン名を持っている場合は、それを入力することもできます。
4.新しいホスティングサービスにドメイン名を移管する必要がありますか?
いいえ、ドメイン名を新しいホスティングサービスに転送する必要はありません。しかし、ドメイン名を新しいホスティングサービスに移管すると、新しいホスティングアカウントと同じダッシュボードで更新や管理が簡単になります。
このトピックについては、ドメイン名とその仕組みに関する究極のガイドをご覧ください。
5.Duplicatorのデータベース接続確立エラーを修正するには?
Duplicatorでデータベースへの接続エラーやデータベース接続エラーが表示される場合は、データベース接続の情報が間違っている可能性があります。
データベース名、MySQL ユーザ名、パスワードが正しいことを確認します。一部の Web ホスティング会社では、MySQL サーバのホスティングサービスとして localhost を使用していません。その場合は、Web ホスティングサービスのサポートスタッフに正しい情報を提供してもらう必要があります。
6.新しいホスティングサービスからサイトが読み込まれているかどうかを確認するにはどうすればよいですか?
あなたがウェブサイトをホストしている人を確認することができますいくつかのオンラインツールがあります。あなたが新規ホスティングサービスにあなたのウェブサイトを転送した後、あなたはこれらのツールのいずれかを使用することができ、彼らはあなたのウェブサイトをホストしているWebホスティング会社の名前が表示されます。
サイトを移行し、ドメインネームサーバー(DNS)に変更を加えてからまだ時間が経っていない場合、サイトが古いホスティングサービスからまだ読み込まれている可能性があります。ドメイン名の変更が完全に反映されるまで、最大48時間かかることがあります。
7.古いホスティングサービスからファイルやデータを削除する必要がありますか?
ホスティングサービス会社を変更する場合、少なくとも1週間は古いサイトを保持することをお勧めします。その後、古いホスティングサービスからファイルを削除することができます。アカウントをキャンセルする場合、ホスティングサービスプロバイダーは彼らのポリシーに従ってすべてのデータを削除します。
8.旧ホスティングサービスでのアカウントはいつまで有効化したままにしておく必要がありますか?
一度新しいホストにあなたのウェブサイトを移行し、あなたが古いWebホストでホストされている他のウェブサイトを持っていない場合は、古いWebホスティングアカウントをキャンセルすることができます。
しかし、すでに年間ホスティングサービス料金を支払っている場合もあります。解約時に返金が可能かどうか、返金ポリシーを確認する必要があります。
9.SSL/HTTPSでWordPressサイトを移動するには?
新しいホスティングサービスプロバイダーにSSL証明書をインストールする必要があります。その後、上記と同じ手順を踏むことができます。https://example.com のように、URLでHTTPSを使用していることを確認してください。
10.ボーナス:新規ホスティングサービスによる無料サイト移行
ホスティングサービスを変更したいが、上記の手順があまりにも複雑に聞こえる場合は、以下のプロバイダーを選択することができ、彼らはあなたのためにあなたのウェブサイトを移行します。
SiteGround、Hostinger、およびWP Engineは、WPBeginnerユーザー向けに無料のサイト移行を提供しています。
このチュートリアルが、ダウンタイムなしでWordPressを新しいホストに移行するのにお役に立てば幸いです。また、WordPressの移行で何か問題が発生した場合は、専門家が選ぶ最も安いWordPressホスティングや、最も一般的なWordPressエラーとその修正方法に関するガイドをご覧ください。
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Shane
In the next step, Windows users need to go to Programs » All Programs » Accessories, right click on Notepad and select Run as Administrator. A Windows UAC prompt will appear, and you need to click on Yes to launch Notepad with administrator privileges.
On the Notepad screen, go to File » Open and then go to C:\Windows\System32\drivers\etc. Select hosts file and open it.
I’m having trouble with this step. Can anyone shed any light?
WPBeginner Support
Hi Shane,
You just need to open the Notepad app as an administrator so that you can edit the hosts file.
管理者
Shane
Oh, just microfosft simple wordpad and then “run as administrator”?
Is that all I have to do?
Muhammed Shabeer
Thanks for the wonderfull trick. Exactly the trick was intented to migrate Wordpress to new host, but I used for migrating from root to subdomain/subfolder. It done successfully with the plugin. Thank for sharing the trick.
Kenneth Aycox
Thank you for a wonderful product! worked perfect.
James Crow
Briliiant! Thanks so much, I’ve just moved a few sites without any problem at all.
Max
Sadly, this didn’t work for me either. I deleted all the website files as directed , uploaded to the installer.php file and package but when I went to website.com/installer.php I was served a 404 error: Not Found
The requested URL /installer.php was not found on this server.
I think it’s easier to just transfer the website the old fashioned way, as others have mentioned. No need for any scripts that might not work.
Max
Please disregard my comment. I later noticed the root folder was set to httpdocs. So created a folder, named it httpdocs and put the package and installer.php in there. Then the website.com/installer.php worked no problem. All went very smoothly thereafter.
Nandan Jha
Hello Max,
Actually it did work for me in the end. I am guessing that you moved the installer and archive to your new host , correct ?
Please look up the IP address from cpanel or equiv of the new host and try accessing via the IP address
http://IPAddress/installer.php
KB
Seems like a good tutorial, but I had no luck with it. There are also a few steps/screens in the Duplicator sequence that were different from mine. The end result was, I got a 404 error upon clicking Site Login – Login to finalize the setup in Step 4 of 4 of the Test Site screen. This differs substantially from the above. Top right corner there’s a version number of 1.2.30. Fairly certain I have the most up to date version of the plugin. If I use File Manager to view the contents of public_html I don’t see the normal list of wp files that I think I should see aside from a wp-snapshots directory, a few web.config files, some installer files and the archive.zip…oh and database.sql. So something has clearly gone wrong, but I’m at a loss to understand what. So…there it is.
Stephen Duffield
Let me guess, you tried to move from a Wordpress.com site? Duplicator & Duplicator Pro wont work for wp.com sites. Nothing works unless you use one of two host sites that they recommend. Duplicator after lots of help, ended up giving me a refund.
Rob
Hey, Just wanted to say thanks for this tutorial. Went perfectly smoothly and would use this duplicator again
Nandan Jha
Great article.
Friends, How do I make it work for an Addon Domain. I took a new plan with GoDaddy and now need to move my sites there. What entry do I make in my hosts file to navigate to install.php ? Thank you,
Nandan Jha
I tried it with my AddOn Domain. It worked for me over a couple of iterations. The thing to take care of is to supply the right ‘domain name’ at Step 3 (or Step 4). The default value which it picks is ‘primarydomain.com/addondomain’. Delete the default value and put addondomain.com
Thanks.
Sean
I recently switched hosts and my original hosting plan has expired. I failed to create a back up before it expired. I do have a local copy of my site on my computer (I use Dreamweaver for FTP). Is there any way to recreate the site with the local files?
Thanks.
Dave Porter
Hi Sean,
Try using WayBack Machine – it takes snapshots of websites over time…
You may be able to grab the source code, images etc… and recreate it from that. I’ve had to do that a few times for clients who have come to me after they have lost contact with their developer…
HTH, Dave
Miki
Hi there,
I have used the Wayback machine and was able to make a copy of my site. Unfortunately I have found myself involved with an unsavory company that had other plans for my business (selling their services on my site) without full disclosure in the beginning. I am now tasked with finding a new programmer to finish the site although it is in wordpress. I do not have wordpress at this time as I was not developing the site; however my understanding from these posts is that if I move the site to another host, I should be able to access wordpress. Is that correct?
WPBeginner Support
Hi Miki,
Yes you can move an existing WordPress website to any other host.
Michael
update…
it works….
be careful with IP address information…. you should read the information carefully…
Thanks
Michael
No luck..
After change the host file, my browser shows message:
This site can’t be reached
example.com took too long to respond.
Search Google for idea inspirations
ERR_CONNECTION_TIMED_OUT
I did flush dns, net stop, dan net start and restart my computer & modem, still not working…
Navajo
I have another question:
In the text it says:
“At this point, you’ve created a complete copy of your WordPress database and files on your new hosting server. But your domain still points to your old web hosting account.
To update your domain, you need to switch your DNS nameservers. This ensures that your users are taken to the new location of your website when they type your domain into their browsers.
If you registered your domain with your hosting provider, then it’s best to transfer the domain to the new host.”
I thought that when i buy a new hosting space, i also and immediatly have to name a doman name. As in: buying a hosting space is always linken to buying a domain. So the new ip addres which i have uploaded my old site to, and which i have to link to my old doman name, already HAS a (newly bought) domain name.
Or can i buy a hosting space, ánd get an IP address which i can use in this tutorial, without it already having a domain name?
Regards, Navajo
WPBeginner Support
Hi Navajo,
It is a common misconception. Hosting and domain name are two different services and you can buy them from two different companies. On the same page where hosting companies offer you to register domain name, they also show another option to indicate that you already have a domain name and you can continue without registering a new one.
For more details please see our detailed guide on What is a domain name and how do domains work?
管理者
Uldis
this is really profound stuff. I was just scratching my head how to migrate client’s site without interruption while changing name servers. Eternally grateful!
Shadat
Hello, I face the database connection failed problem.
can you plz help me? plz
see the screenshots
Dave Porter
Shadat – this is quite an old article now – and you don’t give very much to go on – I would seek help from your hosting company, or get onto a WordPress discussion forum where there are active people who may be able to help you.
But if you are getting a database connection error message, it is generally because the database name/user or password is incorrect
I would try one of the backup tools like Duplicator and see if that works better for you.
Slade
Did you set up a new database and user on your new host?
You must make sure the database name and user and password are all correct for the new host.
Usually a database connection error is a simple oversight like a mispelling or something simple like that.
Michael Goriany
Thanks for this excellent tutorial
If I have well understood, the hosts file (Step 4) is providing for 100% uptime only for the Webmanager but not for the public
How can the DNS switchover time be shortened, or how can the downtime for the public be avoided ?
Slade
Editing the host file allows you to see your site at your new host. Until you update your dns nameservers the public will go to the old host.
The time it takes for dns changes to updare (propagate) is not something that can be controlled. However this guide is correct in providing a no down time solution.
What is happening on the backend that the public does not see is that your website is being hosted at two hosts. The nameservers tell the public which host they are viewing the site on. During the dns update process the users will still view the site at the old host until the propogation is complete.
Once the dns change officially kicks in the public will then be viewing the site at your new host.
Again, to provide the no downtime transfer you would need to change your host file on your local machine (tells your computer you want to view the site at the new host).
This allows you to do the actual install of your website on the new host.
Hope that helps
Lydia
i had to move a client’s site off our subdomain into their own hosting overnight and this REALLY REALLY saved my life! Especially as the domain needed to be repointed seamlessly! I only had trouble with the FTP, i dunno what was wrong with all the logins but i couldn’t get it working. Thankfully my hoster always has an awesome file manager on cpanel.
So yes, very nearly seamless, i’m just testing out the contact forms now which seems to need the DNS switchover time in order to function properly…
And one thing to add, Duplicator has changed the SQL database setup to Step 2 in their latest version, which really made me freak out a bit there.
Thanks very much for the detailed and extremely godsent tutorial!
Kurt
I’m getting ready to follow this tutorial. One question: I am switching servers but also am switching domain names. Should I change my website address in the WP admin settings before running duplicator or after? (Does the order matter?) Thanks!
Johel Fernandez
This tutorial worked out perfectly by April, 2017. ¡Thank you so much!
Ravijit
Hey,
I used this plugin so many times. even, once i used it for too. I really like this plugin but, the problem is it do not extract the big package. We’ve to manually unzip it or need to upload unzipped data to the new hosting.
Any fix for that? Reply as soon as possible.
Archit
Duplicator doesn’t work properly with GoDaddy’s cPanel Linux Hosting service. Script gets terminated even if the settings in php.ini are changed. Please suggest what to do to make Duplicator work there? If not possible, what would be the best alternative?
Hernan
Hi Archit,
I’ve just migrated a site to godaddy and it worked just fine. Which part failed?
best
Hernán
Susan Taunton
This GREAT tutorial successfully guided me through my very first migration of a Wordpress site to a different host! Especially life saving was the instruction about changing “sudo nano /private/etc/hosts” in Terminal – worked like a charm. wpbeginner.com has the most succinct, articulate and smart tutorials, which I have come to depend on.
Thank you!!!!
Susan
Prinze
hi, pls have been having issues uploading my site to s new server using FTP client, my hosting company tried to give tutorials on how to transfer with no result.
the tutorials am getting from your site is abt using a duplicate plugin. my site is down, i can’t access my wp-admin to install the plugin.
i use a backup plugin when my site is up so i have a backup file from the plugin i used n also i did a cpanel backup from my old server.
pls, i need a tutorial hoe to upload my backup files to my new server, which one is best to upload?
the plugin backup or the cpanel backup…
pls help!
Greg Draven
What backup plugin did you use?
Ritadrik Chowdhury
Hi Sir,
I am stuck up with 3rd part which is verification part. I have changed the permalinks and I can see the dashboard as usual but the site is not running. Whenever I am clicking on “TEST SITE” it returns error 404: File Not Found. I tried their help documents. Made changes as usual but no luck. Can you please help me out?
saurabh shelar
Hello Sir. I am saurabh from India. I love your website. I have a blog about software review. And I saw your posts and observe that you edited image in microscope effect. This is really fantastic. Can you please tell me how you do this or please make tuts for this please.
Thank you.
WPBeginner Support
Hi Saurabh,
Thanks for the kind words. There are actually tons of tutorials already. Try searching for how to add magnifying glass effect in Photoshop.
管理者
Brad
Hello,
I have a situation where it would be ideal to have the database on separate hosting. Just because the host of the current site does not offer mysql. I cannot move the site (for a company)
Can I install wordpress on current hosting in a sub domain and have the database on another host? I have never used anything except “localhost” in the wp-config file? Thank you!
Sachin
php not supported they are giving reason?? what to do??
Samuel
Does it work on addon domain?
Because there is this step
“Make sure that your root directory is completely empty. If you have WordPress installed in your root directory, then you need to delete WordPress first”
While my primary domain is already up and running
Cory
This is a well put together article, nice job guys!
Just as an FYI for users reading through the comments, any comment pre-dated 12-6-2016 does not pertain to the article above or the Duplicator plugin specifically.
This article was originally written using the Backup Buddy plugin and has since been updated and rewritten using the Duplicator plugin. This should help clear-up any confusion should some of the comments not really make sense or refer to topics not covered in the article.
Mark Rudder
This is an excellent tutorial.
I also believe this is the easiest and fastest way to to migrate a site.
Migrating DB files and tables with phpMyAdmin is the long way around.
Using Duplicator or BackupBuddy is way less work and you are less prone to mistakes that way.
You need to change DNS no matter what method you choose, so that aspect can’t be counted as far as which method is best.
Changing TTL settings to 1 hour (3600 seconds) as Dave Porter pointed out is the only missing piece of the puzzle. (even though that is not essential to success)
Augusto
Nice article, guys!
I feel that the most critical point migrating a site to another host is the email service. If the default email solution provided by host need to be replaced, a lot of work will came.
Anyone want to share your workflow to do this kind of thing?
Thanks!
Frans Kemper
hello,
Would this procedure also work for sub domains?
I have an add on domain to transfer with about 10 related sub domains.
Thank you
Dave Porter
A few days before I move a domain, I go into the DNS settings and change the TTL settings to 1 hour (3600 seconds), so that the site will move quickly (and do it overnight – so the new location will show for everyone in the morning)
(I was expecting this to be mentioned in the article when I saw the title!)
And to answer Dave’s question you can have as many entries in your Hosts file as you want – I have a reseller account with my hosting company and I’m often working on 2 or more sites I am working on that are located on a different server. You can’t specify a sub-directory in the entry – the one entry will point to all locations for that domain – to do what you want to do you are better using sub-domains – so for example example.com is the main location, then you can have play1.example.com as a sub domains that will have it’s own hosts entry.
Harindepreet singh
I think you should make a video or attach screenshots
David in Mississippi
Another article – directly related to this one, but sufficiently different to warrant its own separate article – would be “Replacing A Legacy Website with a Fully-Developed WordPress Website.”
This has happened to me several times already. I have clients with older, legacy-type (non-WordPress) websites, and they ask me to convert their site to WordPress.
I have two methods I use to do this, and one of them involves building the brand new WordPress site on a temporary development URL. When it is done, I then need to transfer it to the existing URL for the client.
In other words, I develop it at DevelopmentSite, and when it is done, I then move it to ExistingLegacySite
I should think it would be easier to do this than the procedure outlined in your article above, but it would still be helpful for you to do an article on this type of migration.
Thanks.
Dave
Correct me if I’m missing something, but this ‘hosts file change’ will only work if you have a just one site on your plan at that new IP address. I have several low-usage sites I’m hosting on one plan. They are in subdirectories under phulic_html.
So doing this:
192.168.1.22 http://www.example.com
in the hosts file will not specify which of your 5 sites to point to. And it seems the only thing you can specify in the hosts file is an IP address and a URL.
You can’t do something like this:
192.168.1.22/sitea http://www.example.com
Am I wrong?
Felipe
I think this is correct, it won’t work for shared domains.
It is better explained here: the voted answer says “If you have shared hosting, this will make your site inaccessible by direct IP. In a shared hosting environment, the host (GoDaddy) will have multiple websites living at the same IP address. When a browser requests a website, the server relies on the domain name to determine which of the many websites to serve. Without a domain name, the server has no way to tell what the browser actually wants so you don’t get your website. To avoid this situation, you will need a host to give you exclusive use of an IP address.”
I think this should be highlighted in the article.
WPBeginner Support
Once you have added your domain name to your new host, your webserver knows that it is hosting domain name example.com and it’s root directory (Doesn’t matter if it is also hosting other domains as well). However, DNS servers take time to propagate so instead of sending your request to your new webserver, they will be sending users to old location for a while. The hosts file allows you to send your request directly to the new server. Hope this clears the confusion.
管理者
Matt Davis
Correct me if I’m wrong, but I believe you can type in (directly in the browser’s address bar) the IP address followed by a slash (/) and then the sub-directory of whichever site you’re trying to access. I would avoid changing the hosts file altogether. Most hosting companies I’ve used will also usually assign temporary URLs to each new website as well, so if that’s the case you could use that instead of the IP or messing with the hosts file.
Niko
That’s correct MATT. Temporary using the IP address instead of altering the hosts file seems like a better approach. However, both work fine.
Vyse
hello. good article but what about wp multisite?
Tanisia
I’ve tried for four hours to make these instructions work. The result? Now I can’t access my site at my old host. I tried following the directions on this 2-year-old article (will there be an update, since BackupBuddy has evolved?) and now everything is messed up.
I used FTP to upload the files, and edited the host file as instructed, but the ImportBuddy PHP script won’t run. It just shows me the code. I tried contacting Bluehost for assistance, and they were no help. So I tried setting all my other settings back to where they were before I started this odyssey, and now I can’t see my site at all. Not the Admin panel, nothing.
WPBeginner Support
Tanisia, please refer to our guide on what to do when you are locked out of WordPress admin area.
管理者
Tanisia
I’m back in at my old host – my servers needed to re-propagage from Bluehost, and it took longer than I had anticipated. I’m still left with BackupBuddy not working the way it’s supposed to. Again, do you have updated instructions from 2014, since there have been several updates to BackupBuddy since this was written? When I did the Notepad update in Windows 10, it looked different from what was described here, so I couldn’t be sure if that trick worked.
Thank you for answering back.
Fahim
If it was a primary domain , can i follow this Process? I need to move and that domain is Main/primary domain, how can i move,will u plz help me?
Mark
Just stuck i step 4, can i just simply addon domain and change dns in new host, ? Following that, C:\Windows\System32\drivers\etc. , there is nothing in my etc, nothing like hosts file, btw great tutorial easy to fallow, thanks
Jacob
I was hoping there would be an easier way to do it with a third party service, but I’m not about to shell out 80 bucks just to do that.
Ash
The backupbuddy steps in the new version have changed quite a bit. Nothing to be afraid of though. I was able successfully migrate from t1.micro on aws to t2.small instance. So far so good.
David
A few questions for you:
1. Isn’t there a SIMPLE way to back up one site (themes, child themes, plugins, and post data), then restore it to another site?
It truly should be as simple as (a) Backup To (dropbox mysite.zip), then (b) Restore From (dropbox mysite.zip).
2. Is it possible, perhaps even EASY, to develop a client’s WP site on your development server, then use Backup Buddy (or some other backup/restore program) to migrate it to the client’s site?
3. Does Backup Buddy, or any other backup/restore program you know of, give you the ability to restore to an existing WP installation? In other words, can you set it to restore everything except the WP core files?
Thanks for this article.
David in Mississippi
WPBeginner Support
Actually, in the article we have shown how BackupBuddy does exactly what you are asking for. You simply backup your site, download an archive file and an importer file. Upload these files to the new location and run the script. Hope this helps.
管理者
Ash
@David, with backupbuddy you can choose which files to leave out while backing up. So you can leave out the core WP files.
Robert
hi guys,
A friend just make me a new wordpress website and uploaded it to my hosting account. Now, I want to change the domain and hosting account and want to upload the website to the new hosting account.
My friend sent me the archive with all files of the website including database. How is possible to upload the website to my new host?
I appreciate your answer.
thank you
Ricardo Clarke
I actually just went through this process yesterday and need to transfer another site today. This is hands down the most thorough walkthrough I’ve seen. The 4 to 48 timeframe really helped ‘cause I thought something went wrong, but the transfer just needed time to propagate across the interwebs.
WPBeginner Staff
As soon as you figure out that your new domain has regained the search positions for your old site. We hope that you have setup 301 redireccts on old domain otherwise search engines wouldn’t know that your old content has moved to the new domain permanently.
WPBeginner Staff
What’s the shorter way of doing this?
Sebastien
Hi there, thanks for your tutorial, here’s an other way of doing it… free.
1. Tools > export posts and pages from admin panel. If you also need the DB phpMyAdmin export tables from the db. Import them in the new db. Check for the extension of the tables to be the same (_wp for instance)
2. edit your virtual host config file, add what follows between your server {}
allow your_public_ip;
deny all;
3. Access the site by its ip. (make sure you set the ip of your new server instead of the url in phpmyadmin > wp_options > siteurl and home options)
4. Tools > import posts and pages
5. Change your DNS records at the old host.
6. Done. Use another plugin like UpdraftPlus to backup for free.
Ash
Tried UpdraftPlus. Didn’t do anything at all.
Rachel Charles
Clean and modern and Easy to modify!
Kate_H
Great guide. I can confirm these steps work brilliantly as I recently moved a 5 year old WP site from one domain to another domain and swapped web hosts as well.
The only difference I did was redirect the old site to the new site via the .htaccess as I wasn’t migrating the old domain name over at the time.
Out of curiosity how long would you leave it before deleting all the old content from the old domain and setting up a permanent URL redirect via your registrar?
zimbrul
I really hate Backup Buddy. In 80% of cases I got errors and their support is not that good. I’d rather move a site with Duplicator free WordPress plugin
WPBeginner Staff
Zimbrul, Duplicator is a nice plugin too. However, we have moved many WordPress sites using BackupBuddy and it has always worked flawlessly for us. That’s why we recommend it.
Jim
Fully agree. Duplicator has never let me down and I have backed up and installed to many websites to count. No need for a paid plugin.
Dennis Does Cricket
That’s a ridiculously long winded way of doing it.
Jonathan
I was looking for this. This already assumes knowledge of FTP etc. so why not just:
1. Copy over all files (download locally, upload to new server).
2. Export the DB (you can use Migrate DB free version if you can’t access the old hosts phpmyadmin or such). Also, if you’re moving from a different domain it replaces the urls etc.
3. Create a new DB on your new host, import the DB.
4. Transfer the domain.
Same result, no fiddling with installer scripts and such.
Matt Davis
This is how I would do it.. In addition, you would also need to edit your wp-config.php file with the new DB info (Specifically the database host entry, as I believe importing the old database will create the same database name, user and password on the new one). Also, I would avoid editing your hosts file and instead either use the IP address directly in your browser’s address bar followed by your sub-directory name (if needed) or use the temporary URL most hosters provide when a new account is set up.
The steps in this article are good for someone that doesn’t want to touch configuration files in their Wordpress folders, or who want an all-in-one solution that gets them their site and DB in one step.