Joomla! Web サイトのコピーは 2 つの部分からなるプロセスです: ファイルをコピーする必要があり、データベース (コンテンツが保存されている場所) をコピーする必要があります。ファイルのコピーとデータベースのコピーは別の操作です。最初に実行するものは、特定の状況にもよりますが、大きなケースでは、Web サイトが食べ物のようにベビントされており、コピーの実行中に小さな BSITE をオフラインにする必要がある場合は、ダウンタイムを最小限に抑えるために、データベースのコピーを最後に実行する必要があるでしょう。
Webサイトのコピー(一般的な方法)
アキーバ
- Akeeba Backup は.jpaファイルを生成します
- .jpaファイルには、すべてのフォルダー/ファイルおよびデータベース ファイルが含まれています。
- .jpaファイルにはインストーラーも含まれています
- Kickstart.php (Akeeba より)は.jpaファイルを解凍します
- 次に、インストーラーを実行し、Joomla インストールのようにサイトをインストールします。
- インストーラーは、別の場所に復元するための構成を変更し、新しいデータベースの詳細の入力を求めます。
Joomla ダウンロード用のデータベースを作成して Akeeba をインストールした後、 Joomla 拡張機能ディレクトリからダウンロードできます。完全な手順へのリンクもあります。
FTPでファイルをコピーする
ある Joomla! インストールから別のインストールにファイルをコピーする 1 つの方法は、標準のデスクトップ FTP ソフトウェアを使用して、まず Web サーバー上の場所から Web サイトを構成するすべてのファイルをダウンロードし、次にこれらのファイルを新しい Joomla! インストールの場所にアップロードすることです。 Joomla! サイトのコピーをどこに配置するかによって、新しい場所は同じ Web サーバー上の別のディレクトリになる場合もあれば、まったく異なる Web サーバー上の新しい場所になる場合もあります。同じサーバー (テスト目的など) を使用する場合は、両方のインストールを同時に実行する際に発生する可能性のあるエラーや問題を回避するために、サブディレクトリではなくサブドメインを使用することをお勧めします。
すべてのフォルダーとファイルをある場所から別の場所に移動するときに、同じディレクトリ構造を維持することが重要です。幸いなことに、ファイルとフォルダーのセットをアップロードおよびダウンロードすると、デスクトップ FTP ソフトウェアがこれを自動的に処理します (FTP ソフトウェアは、次のことを行う必要があります)。 FTP と FTP ソフトウェア インターフェイスの使用方法を説明するヘルプ ドキュメントが含まれています) ファイルをある場所から別の場所に移動した後も、Joomla! のコピーを新しい場所で動作させるために Joomla! 設定ファイルを編集する必要がある場合があることに注意してください。 Joomla! サイトのコピーを機能させるには、Web サーバーの設定を変更する必要がある場合もあります。
まれに、FTP 転送中にファイルが破損し、ファイルの一部のみが正常に送信されることがあります。ファイルをコピーした後に新しい Joomla! インストールで奇妙なエラーまたは予期しないエラーが発生した場合は、ファイルを再アップロードしてみてください。転送中に破損が発生した場合。
サーバーからコンピュータにファイルをダウンロードする
- FTP ソフトウェア (FileZilla など) を使用してサーバーに接続します
- ダウンロードしたいディレクトリを選択します (通常は/public_html/または/htdocs/ )
- ダウンロードするファイル/フォルダーを右クリックして選択するか、フォルダーを「リモート サイト」ビューから「ローカル サイト」ビューにドラッグ アンド ドロップします。
- リモートファイルのダウンロードが開始されます
- ファイルをダウンロードした後、「失敗した転送」をチェックしてエラーがないか確認してください。
コンピュータからサーバーにファイルをアップロードする
- Configuration.phpがサーバーに対して適切な設定になっていることを確認してください(特に、 localhost、データベース、データベース ユーザー、データベース パスワード、log_path、tmp_path ) 。
- FTP ソフトウェア (FileZilla など) を使用してサーバーに接続します
- アップロードするディレクトリとその場所 (通常は/public_html/または/htdocs/ )を選択します。
- アップロードするファイル/フォルダーを右クリックして選択するか、フォルダーを「ローカル サイト」ビューから「リモート サイト」ビューにドラッグ アンド ドロップします。
- ローカル ファイルのリモート サーバーへのアップロードが開始されます
- ファイルをアップロードした後、「転送の失敗」をチェックしてエラーがないか確認してください。
phpMyAdminを使用したデータベースのコピー
phpMyAdmin ツールを使用してデータベースをエクスポートおよびインポートすると、サーバー上で別の名前を使用してデータベースのコピーを複製する簡単な方法が提供されます。
データベースのコピーをコンピュータにエクスポートする
- phpMyAdminを使用して複製するデータベースにログインします。
- ページの左側にあるデータベース名をクリックします
- 「エクスポート」タブを選択します
- 「ファイルとして保存」オプションを選択します
- 「実行」をクリックします
データベース ファイルをパーソナル コンピュータに保存するように求められます。
コピーを新しいデータベースにインポートする
まず、アカウント コントロール パネルを使用して、サーバー上に新しい空のデータベースを作成する必要があります。このデータベースは UTF8 ( utf8_general_ci )である必要があります。新しいデータベースの作成後、次の手順を実行します。
- phpMyAdminを使用して新しいデータベースにログインします。
- ページの左側にあるデータベース名をクリックします
- 「インポート」タブを選択します
- [インポートするファイル]の下の[参照]ボタンをクリックし、コンピュータからデータベース ファイルを選択します。
- 「実行」をクリックしてデータベースをインポートします
- ヒント「データベースが選択されていません」というエラーが表示された場合は、最初に左側の列にあるデータベース名をクリックするのを忘れた可能性があります。
設定.phpの変更
Joomla を新しいサーバーで動作させるには、configuration.phpに必要な変更を加えて新しいサーバー設定を反映させます。以下を確認/編集する必要があります:
var $host = 'localhost'; // 通常は「localhost」です。サーバーによって異なる場合は、ホスティング プロバイダーが教えてくれるはずです。
var $user = 'db_username';
var $db = 'データベース名';
var $password = 'the_db_password';
var $live_site = ''; // 通常は空です。
var $cookie_domain = ''; // 空である必要があります。
$log_pathと$tmp_pathが間違っていても、Joomla は機能しますが、拡張機能をインストールすることはできません。新しい Joomla サイトのバックエンドにログインします。
[システム] → [システム情報] → [ディレクトリ権限]に移動します。
下の 4 行を見てください。
キャッシュ (キャッシュ ディレクトリ) 書き込み可能 管理者/cache (キャッシュ ディレクトリ) 書き込み可能 /var/www/some/other/folder/example.com/logs/ (ログディレクトリ) 書き込み不可 /var/www/some/other/folder/example.com/tmp (一時ディレクトリ) 書き込み不可
$log_pathと$tmp_path が「書き込み不可」の場合は、 configuration.phpの値を変更します。
/cache/部分を除いた「キャッシュ ディレクトリ」の値を使用し、$log_pathと$tmp_pathを次のように変更します。
var $log_path = '/var/www/example.com/logs';
var $tmp_path = '/var/www/example.com/tmp';
ディレクトリのアクセス許可で$log_pathと$tmp_pathが「書き込み可能」であることが示されている場合は、拡張機能をインストールできるはずです。
SSH コマンドラインを使用して Web サイトをコピーする (経験豊富なユーザー向けの方法)
圧縮アーカイブ ファイル方式を使用したファイルのコピー
FTP を使用して多数の個別ファイルをコピーすることは信頼性が低い場合があります。ソース システムと宛先システムの両方にコマンド ライン アクセス権がある場合は、ソース システム上のすべてのファイルを含む圧縮アーカイブ ファイルを作成し、その 1 つのファイルを解凍できる宛先システム。
アーカイブファイルの作成
Unix スタイルのシステム (Linux など) では、 gzipプログラムを使用して.zipファイルを作成するか、tarプログラムを使用して.tar.gzまたは.tar.bz2ファイルを作成できます。詳細な手順については、「man gzip」または「man tar」と入力してください。コマンドライン。例:
tar cvfz joomlabackup.tar.gz /joomla へのパス
Joomla! インストール内のすべてのファイルを含む、joomlabackup.tar.gzという gzip 圧縮されたアーカイブ ファイルが作成されます。
重要な注意事項tarコマンドを実行するときは、バックアップしようとしているフォルダーにいないことを確認してください。そうしないと、無限ループが作成されます。
アーカイブファイルの抽出
アーカイブ ファイルを宛先システムにコピーしたら、それを解凍する必要があります。アーカイブ ファイルの作成に使用したのと同等のコマンドを使用します。たとえば、上の例で作成したアーカイブ ファイルを解凍するには、次のように入力します。
cd /joomla へのパス
tar xvfz joomlabackup.tar.gz
ユーザー ID またはグループ ID がソース システムと宛先システム間で異なる場合は、抽出したファイルの所有権を修正する必要があります。たとえば、Apache システムでは、次のコマンドを入力する必要がある場合があります。
cd /joomla へのパス
chown -R www-ユーザー:www-グループ *
そのため、Apache が Joomla! ファイルの所有権を持ちます。
- システム上の正しいグループ名とユーザー名 ( www-groupおよびwww-user )については、ホスティング プロバイダーに問い合わせてください。
MySQL コマンドラインメソッドを使用したデータベースのコピー
通常、 mysqldump を実行してデータベースのコピーを作成します。
$ mysqldump -u user -p データベース名 > データベース名.out
sftp/ssh を使用してdb-name.outファイルをリモート MySQL サーバーにコピーします。
$ scp db-name.outこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 :/backup
リモートサーバーでデータベースを復元します (ssh 経由でログイン):
$ mysql -u ユーザー -p データベース名 < データベース名.out