LEMPスタック上でWP 3.5.1を実行中(Linodeで終了)...
私はWPサイト用のwp-contentフォルダーとデータベースのフルバックアップを持っています。サイトのURLは次のようなものです。
test.example.com
私は自分のサーバー上でサイトを運用したいのです。
test.mydomain.com
サイトが完成してDNSの変更が有効になったら、サイトのURLを次のようにします。
myclientsdomain.com
このようにサーバーの移動やドメインの変更を処理する上で好ましい(そしておそらく最も直接的な方法で)方法は何ですか?私は段階的な答えを探しています、それはファイルとデータベースの両方のために上で説明されたすべての状況を説明するものです。
コーデックスでWordPressを動かすことについて、かなり良い ステップバイステップがあります 。それは私がドメインを変えるときに従うものです。
ファイルを移動するのはとても簡単です。難しいのは、データベース内のハードコーディングされた参照です。ただし、 シリアル化された検索と置換 は、すべてのデータベースの変更を処理します。私は過去にVelvet Bluesプラグインを使ったことがありますが、Search and Replaceスクリプトはかなり優れています。
私は素晴らしいプラグインデュプリケータを利用して、この正確な手順を定期的に完成させています。
http://wordpress.org/extend/plugins/duplicator/
プラグインは完全にサポートされていて、ここには素晴らしいFAQがあります。
http://lifeinthegrid.com/labs/duplicator/ /
プラグインはあなたのデータベースとファイルの両方の.Zipバックアップとあなたがあなたの新しいルートディレクトリに置くインストーラー.phpを作成するでしょう。あなたは単にあなたの新しいデータベース情報を入力するだけでそれが残りをします。
おそらくこれまでのところ私のお気に入りのWPプラグインです。
途中で助けが必要な場合は、私に知らせてください。
考慮すべき点がいくつかありますが(後の回答で)、次の手順をお勧めします。
これは一目瞭然です。あなたはたくさんのデータ操作をするつもりなので、あなたのオリジナルが安全であることを確認してください。
これを行うための最速の方法はあなたが別のサーバーからディレクトリをインポートすることができるホストを持つことです。これは、FTP詳細を指定すること、およびtargetディレクトリを定義することによって実行できます。
サーバーは通常ユーザーが持っているものよりずっと速いインターネット接続を持っているので、これはデータを転送するのに好ましい方法です。コマンドラインを使ってこれらのコマンドを手動で実行することもできます。
もっと遅いオプションはZipファイルを生成し、ダウンロードし、あなたの新しいサーバーにアップロードしそしてそれを解凍することです。あなたがそれをする可能性がないならば、遅い道をたどってください - すべてを荷を積むこととすべてをアップロードすること。ファイル転送中にコーヒーを飲みに行く:)
繰り返しますが、他のサーバーからでも、既存のデータベースを新しいデータベースにインポートするオプションが多くのホスティング業者にあります(もちろん、古いサーバーは外部データ接続を受け入れなければなりません)。
あなたがこれを行うことができれば素晴らしい、しかしあなたはあなたのデータベースをエクスポート/インポートすることもできます。
新しいサーバーで、ファイルが古いサーバーと同じ方法で設定されていることを確認し、サブドメインを古いサーバーと同じディレクトリ(通常はWordPressルート)を指すようにします。
wp-config.php
を編集する新しいwp-config.php
を保存してください。データベース接続の詳細を編集するだけです。
これでWordPressをセットアップする必要がありますが、それでも古いSiteURLとAdminURLが使用されるため、ログインできません。新しいデータベースのoptions
-テーブルでこれらの値を変更します。探している2つの値はsiteurl
とhome
です。新しいドメインをそこに配置してください。
これですべてが動作するはずです。サイトを使用するだけでなく、ログイン、編集、書き込みもできます。唯一の問題はあなたの投稿がまだそれらの中に画像と添付ファイルのための古いURLを持っているということかもしれません。
投稿に古いURLが含まれている場合、または確信がない場合は、posts
-tableでデータベースを確認してください。
データベースを直接検索するか、 シリアル検索や置換 のようなスクリプトを使用してこれを行うことができます。古いURLを見つけた場合は、手動または自動で置き換える必要があります。私はそれを自動的に行い、その後エラーをチェックすることを好みます。
他のテーブルに古いURLが含まれているかどうかも確認してください。これは置き換えるのが少し難しいかもしれませんが、それはまたあなたのサイトを完全に動かすためにされなければなりません。
念のために、もう一度パーマリンク設定を保存してパーマリンクを作成してください。
あなたがそれを転送した後、本当にあなたのサイトをチェックすることを忘れないでください。通常のPHP/HTMLよりも失敗する可能性が高いので、すべての機能、特にAJAX関連、Contactform、Mapsなどをチェックしてください。
いつものように、手動で作成され、手動で転送され、そして自動的に編集されたものはどれもフェイルセーフではありません。ここに簡単に踏み込むことができますが簡単に回避することができますいくつかのコメントラップです。
それはそれであるはずです。やるべきことのように見えますが、実際にはほとんどが自動的に実行されます。あなたはただうまくいかないことができるすべてについて考えて、それがそうしたかどうかをチェックする必要があります:)
楽しむ!
プラグイン、スクリプト、あるいはSQLの知識さえも使用する必要はありません。シンプルなメモ帳で移行には十分です。すべてのワードプレスファイルを新しいサーバーにアップロードし、wp-config.php(メインのワードプレスフォルダー内)で3つの値を変更する必要があります。define( 'DB_NAME'、 'your_new_db_name'); define( 'DB_USER'、 'your_db_username'); define( 'DB_PASSWORD'、 'your_db_password');
次に、現在のサーバーでphpmyadminのようなmysqlクライアントを使用している場合は、データベースをファイルにエクスポートしてから、メモ帳でyour_db_dump.sqlを開き、次にすべてのoccurencies test.example.comを見つけてtest.mydomain.comに置き換えます。そのdb_dumpを新しいデータベース(wp-config.phpで定義したもの)にインポートする必要があります。それで全部です。
私はこのようにしていくつかのサイトをあるサーバー/ドメインから別のサイトに移動しました、そしてあなたが通常必要とするのはバックアップとあなたが持っているように見えるあなたのwp-contentフォルダーだけです。私が従う方法は次のとおりです。
完了しました。
あなたのサイトを稼働させるために必要なことはこれだけです。運用が開始されたら、古いサイトを参照してパーマリンクを再生成する可能性のあるプラグイン/テーマ固有の設定を確認することをお勧めします。
前の答えはこれでした、しかしここにいくつかの他の入力によるステップバイステップがあります:
少し時間を取ってクライアントに75ドルの請求をしてください。
(searchreplacedb.phpは無料で入手可能です:interconnectit.com/products/search-and-replace-for-wordpress-databases ...それらにも手順があります)。
あなたが持っているのがWP contentsフォルダだけであるならば、あなたは別の問題を抱えています。正確な同じバージョンの残りのWPインストールを入手する必要があります。 WPのバージョンがわからない場合は、データベースを検索してください。オンラインで古いバージョンをダウンロードするのは簡単です。以前と同じようにポップアップ表示させたい場合は、以前のようにすべてを適切な場所に配置し、すべて新しいフォルダを設定するためにftpを使用します。あなたが何かを欠いているか、それが標準的なテーマになっているか、プラグインをオフにするならば、dbとWPものをアップロードした後にサイトを訪問しないでください。私はプラグインの設定を失ってしまい、それをすべて終わらせなければならなかったので、ただ考えてゆっくり行ってください。
サブフォルダまたはアドオンがすでにある場合、または新しいサイトに必要な場合は、事前に計画してください。必要な新しいフォルダや新しいフォルダがないことを考慮する前に、URLを置き換える必要はありません。 'url'などに戻る前に 'folder/url'に対してsearchreplacedbを実行する必要があるかもしれません。そうでなければ、 'addon'を 'sub directory installのroot表示'や他の無意味なものに変更することがあります。
新しい構造が古い構造と一致し、WPディレクトリ全体がある場合は、この記事を読むよりも簡単かつ迅速に行うことができます。命令が言うように、それがautoconfigを持っているので、あなたがWPをアップロードしたのと同じディレクトリにプログラムを置いてください。
あなたがFTPアクセス、コントロールパネルアクセス、またはSQLアクセスを持っていないなら、あなたは本当に良いサーバーを必要とし、運が悪いかもしれません。
他の投稿で推奨されている検索と置換を試してみてください。運が良ければ、古いバージョンのWPを持っていれば、必要なパラメータに収まります。あなたのサイトでロシアンルーレットをプレイする方法の本当の痛み。
また、メモ帳でデータを編集してはいけません。今すぐ探して何週間も費やすかもしれないニースエラーがあります!あなたがそれを見なければならないならば、見てください、それを保存しないでください。メモ帳が存在することを忘れてメモ帳++を使用する必要がありますが、テキストエディタでシリアル化されたデータを手動で編集するのは、phpmyadminで検索と置換を試みるのと同じくらい悪いです。しないでください。
あなたは "SQL直列化データ"を検索することができます。簡単な答えは、検索と置換はSQLのシリアル化されたデータを円にするということです。 WP dbはデータをシリアライズしています…最近ではさらにそうです。
私はこれを何度もやり過ぎてわずかな成功を収め、ついにそれを正しく研究する前に何度も壁にぶつかった。それは今公園を散歩しています。
私がしているのは:
受信側ホストに新しいデータベースを作成します。 SQLファイルをインポートします。新しいデータベースで次のSQLクエリを実行します。
UPDATE wp_options SET option_value = replace(option_value, 'test.example.com', 'test.mydomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'test.example.com', 'test.mydomain.com') WHERE meta_key = '_menu_item_url';
UPDATE wp_posts SET guid = replace(guid, 'test.example.com','test.mydomain.com');
UPDATE wp_posts SET post_content = replace(post_content, 'test.example.com', 'test.mydomain.com');
WordPressファイルを受信サーバーにアップロードします。
テーマやプラグインによっては、データベースやダッシュボードに追加の変更を加えることができます。これらはあなた自身が発見し、あなたがそれらを見つけたときに変更しなければならないでしょう。
それは完璧ではないことと、ドメインを越えてWordPressを移動することはお尻の痛みかもしれないとの公正な警告。私が行ったもう一つのことはあなたのwp-configファイルに以下を追加することです:
define('WP_HOME','http://'. $_SERVER['SERVER_NAME']);
define('WP_SITEURL','http://'. $_SERVER['SERVER_NAME']);
これは、サイトが現在どのドメイン上にあるかに関わらずサイトを機能させるのに役立ちますが、それでも、コンテンツ、オプション、およびメニューでハードコーディングされたURLを扱う必要があります。私はそれを自分でテストしていないし、それらが機能するためにあなたがあなたのデータベースから対応するオプションを削除する必要があるかどうか知りません。
更新: データベース部分を処理するプラグインがあるだろうと推測したはずです http://wordpress.org/extend/plugins/wp-migrate-db/