GNU/Linux >> Linux の 問題 >  >> Panels >> cPanel

共有cPanelホスティングをVultrクラウドサーバーに移行する方法

<!DOCTYPE html PUBLIC "-// W3C // DTD HTML 4.0 Transitional // EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <?xml encoding ="utf- 8 "?>

cPanelは、最も人気のあるLinuxコントロールパネルであり、ほとんどの共有ホスティングプロバイダーのデフォルトオプションです。ただし、共有ホスティング環境から仮想プライベートサーバー(VPS)を使用したクラウドホスティングに切り替えるには、Linuxコンソールの操作に関する少しのノウハウが必要です。

このガイドでは、cPanelを使用する共有ホスティング環境から、Ubuntu20.04サーバーを実行する新しいクラウドホスティング環境に移行します。好みに応じて、Vultrカスタマーポータルから別のOSファミリを選択できます。

さらに、この記事は、Linuxの経験に基づいて3つのオプションのセクションに分かれています。

前提条件

  • 無料のVultrカスタマーアカウントを作成します。
  • 新しい仮想プライベートサーバー(VPS)を導入します。
  • SSHとサーバーへのログイン。
  • sudo権限を持つ新しい標準ユーザーを作成します。

1。サーバーFTPアカウントを作成する

cPanelからVPSサーバーにファイルを直接転送するには、サーバーでFTPを有効にし、ファイルを転送するための新しいユーザーアカウントを作成する必要があります。詳細なvsFTPdインストールガイドはここにあります。

さて、 vstpdをインストールします サーバー上で。

$ sudo apt-get vsftpd

次に、構成ファイルを編集して、ローカルユーザーがサーバーにログインできるようにします。

お気に入りのエディターを使用して、ファイル /etc/vstpd.confを編集します 。

$ sudo nano /etc/vsftpd.conf

以下の行を見つけてください:

local_enable=YES
write_enable=YES

anonymous_enable=NO

を削除してコメントを解除します 、ファイルを保存して閉じます。

サーバーにローカルユーザーアカウントがまだない場合は、アカウントを作成して、ユーザーにsudo権限を付与します。

# adduser example sudo

名、名前を入力し、 Yで確認します ユーザーアカウントを作成します。

次に、FTPサーバーを起動します。

$ sudo service vsftpd start

次に、ポート 22を開きます ファイアウォール上。

$ sudo ufw allow 22/tcp

ファイアウォールを再起動します

$ sudo firewall reload

2。 cPanelにログインします

共有ホスティングプロバイダーによっては、ポート 2083を介してcPanelにログインします。 または/cpanelを追加します ドメインURLの末尾まで。

https://example.com/cpanel

3。バックアップcPanel

新しいサーバーに移行する前に、ウェブサイトのファイル、メール、DNSレコード、データベースのコピーを保持する方法として、cPanelの設定をバックアップすることが重要です。

cPanelダッシュボードを使用して、 backupを選択して完全バックアップを作成します ファイルの下 セクション。

[バックアップ先]で、[ SCP]を選択します オプションのリストから。 リモートサーバーにVultrサーバーのIPを入力します バックアップファイルを生成するために、それぞれ手順1で作成したフィールド、FTPユーザー、パスワード、およびポート。

サーバーへの接続が確立され、バックアップが完了したら、VPSサーバーにログインして、新しく追加された backup-***_***。tar.gzを見つけます。 ファイル。デフォルトでは、ファイルはアカウントのルートディレクトリにアップロードされます 、または Remote Dir:で指定されたディレクトリ フィールド。

次に、バックアップアーカイブからファイルを抽出します。

$ tar -xvf backup-***_***_example.tar.gz

簡単に識別できるように、抽出したディレクトリの名前を変更します。

$ mv backup-**_**_example/ cpanelfiles

次に、ディレクトリに移動して、すべてのファイルを一覧表示します。

$ cd cpanelfiles/

$ ls

出力

drwx--x--x 16  4096 Dec 26 23:07 homedir/ **– contains all necessary webfiles**
-rw-------  1   14 Dec 26 23:07 homedir_paths
drwx------  2  4096 Dec 26 23:07 httpfiles/
drwx------  2  4096 Dec 26 23:07 ips/
drwx------  2  4096 Dec 26 23:07 locale/
drwx------  2  4096 Dec 26 23:07 logs/
drwx------  2  4096 Dec 26 23:07 meta/
drwx------  2  4096 Dec 26 23:07 mm/
drwx------  4  4096 Dec 26 23:07 mma/
drwx------  2  4096 Dec 26 23:07 mms/
drwx------  2  4096 Dec 26 23:07 mysql/ **-- contains all mysql database backup files**
drwx------  2  4096 Dec 26 23:07 mysql-timestamps/

オプション1:WebスタックをインストールしてWebサイトをホストする

すべてのcPanelファイルがサーバーに転送されたら、ネームサーバーをVultrに変更し、ホスティング環境を設定することで、ドメイン名を安全に移行できます。 .htaccess のようないくつかの隠しファイルがあるため、移行されたファイルをホストするには、Apache、MySQL、PHP(LAMP)スタックをお勧めします。 変更されません。

WordPress Webサイトのファイルを移行する場合は、オプションで(E)Nginx、MySQL、PHP(LEMP)のインストールを選択できます。ただし、この記事の目的上、サーバーにLAMPをインストールしてください。

まず、サーバーの完全修飾ドメイン名を設定します。たとえば、 example.comを置き換えます 実際のドメインで。

$ sudo hostnamectl set-hostname example.com

Apacheをインストールする

Ubuntu

$ sudo apt install apache2

CentOS

$ sudo dnf install apache2

起動時にApacheを起動できるようにする

$ sudo systemctl enable apache2

ApacheWebサーバーを起動します

$ sudo systemctl start apache2

MySQLをインストールする

$ sudo apt install mysql-server 

ルートパスワードでデータベースサーバーを保護し、安全でないデフォルトを削除します。

$ myql_secure_installation

MySQLが起動時に起動できるようにします。

$ sudo systemctl enable mysql

MySQLを起動します。

$ sudo systemctl start mysql

次に、MySQLにログインします。

$ mysql -u root -p

Webサイトの新しいデータベースを作成します。

mysql> CREATE DATABASE exampledb;

安全なパスワードで新しいユーザーを作成します。

mysql> CREATE NEW USER exampleuser IDENTIFIED BY 'STRONG-PASSWORD';

ユーザーにデータベースへの完全なアクセス許可を付与します。

mysql> GRANT FULL PRIVILEGES ON exampledb.* TO 'exampleuser'@'localhost';

MySQLの権限を更新します。

mysql> FLUSH PRIVILEGES;

コンソールを終了します。

mysql> EXIT

PHPをインストールします。

$ sudo apt install php

また、必要なPHPモジュールをインストールします。

$ sudo apt install php-xml php-gd php-mysql php-curl php-zip php-mbstring

Apacheの構成

新しいApache仮想ホスト構成ファイルを作成します。

$ sudo touch /etc/apache2/sites-available/example.com.conf

次に、お気に入りのテキストエディタを使用して、ファイルを編集します。

$ sudo nano /etc/apache2/sites-available/example.com.conf

次のコード行を貼り付けます:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName  example.com

    # Index files and web root directory
    DirectoryIndex index.php index.html
    DocumentRoot /var/www/example.com/

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteRule ^index\.php$ - [L]
        RewriteCond $1 ^(index\.php)?$ [OR]
        RewriteCond $1 \.(gif|jpg|png|ico|css|js)$ [NC,OR]
        RewriteCond %{REQUEST_FILENAME} -f [OR]
        RewriteCond %{REQUEST_FILENAME} -d
        RewriteRule ^(.*)$ - [S=1]
        RewriteRule . /index.php [L]
    </IfModule>
    # END wordpress

    Options FollowSymLinks
    Order allow,deny
    Allow from all
</VirtualHost>

ファイルを保存して閉じます

構成をテストする

$ sudo apachectl configtest

構成ファイルを有効にする

$ sudo a2ensite example.com.conf

Apacheを再起動します

$ sudo systemctl restart apache2

次に、抽出したcPanelWebサイトファイルを新しい仮想ホストのwebrootディレクトリにコピーします。 homedir / ディレクトリには必要なすべてのファイルが含まれています。ドメインルートまたはpublic_html/からコピーしてください cPanelWebファイルディレクトリとして機能した方。

$ sudo cp cpanelfiles/homedir/public_html/* /var/www/example.com

WebrootディレクトリにApacheの所有権を付与する

$ sudo chown -R www-data:www-data /var/www/example.com

次に、Webサイト構成ファイルを編集して、新しいデータベース名、ユーザー名、およびパスワードを含めます。

$ sudo nano /var/www/example.com/wp-config.php

以下の行を見つけてください:

/** The name of the database for WordPress */
define( 'DB_NAME', 'exampledb’);

/** MySQL database username */
define( 'DB_USER', 'exampleuser' );

/** MySQL database password */
define( 'DB_PASSWORD', 'strong-password' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

データベース名、ユーザー名、パスワードを反映するように変更してください。

データベースの復元

cPanelデータベースを復元するには、 mysql /に切り替えます 抽出されたファイルディレクトリ内で、ターゲットの .sqlを見つけます データベースファイル。

mysqlに変更します ディレクトリ。

$ cd /cpanelfiles/mysql

データベースを復元します。

$ mysql -u root exampledb < file.sql

完了したら、MySQLシェルにログインし、データベース内の新しいテーブルを確認します。

$ mysql -u exampleuser

新しいデータベーステーブルを確認します。

mysql> use exampledb;

mysql> select * from exampledb;

コンソールを終了します。

mysql> EXIT

ファイアウォールの構成

ポート80を開いてHTTPトラフィックを許可します。

$ sudo ufw allow 80/tcp

ポート443を開いて、HTTPSトラフィックを許可します。

$ sudo ufw allow 443/tcp

現在のファイアウォールテーブルを確認してください。

$ sudo ufw status

ファイアウォールを再起動します。

$ sudo ufw reload

ドメイン名を新しいVultrクラウドサーバーにポイントする

まず、Vultrカスタマーポータルにログインし、新しいドメインを追加して、デフォルトのIPアドレスにサーバーIPを入力します。 フィールド。

次に、ドメインレジストラ側にログインし、ドメインを編集して、ネームサーバーにVultrを指定します。

変更を保存して、新しいクラウドサーバーをテストします。

新しいクラウドサーバーをテストする

Webサイトを使用する準備が整い、ドメインがVPSサーバーを指し、必要なすべてのファイルがwebrootディレクトリにインストールされます。ドメイン名にアクセスしてサーバーをテストします。

http://example.com

DNSの伝播期間(完了までに3〜12時間かかることが多い)にもよりますが、Webサイトは新しいVPSサーバーからロードできるはずです。ただし、すべてのドメインリクエストが新しいサーバーを指しているため、新しいSSL証明書をリクエストできます。

HTTPSを有効にする

Certbotをインストールします。

$ sudo apt install python3-certbot-apache certbot

無料のLet'sEncryptSSL証明書のリクエスト。 example.comを置き換えます ドメイン名と[email protected]を使用 実際のメールアドレスを使用してください。

$ sudo certbot -d example.com -m [email protected]

自動更新をテストします。

$ sudo certbot renew –dry-run

これで、WebサイトでHTTPSトラフィックを処理する準備が整いました。 https://example.com にアクセスして、サーバーをテストします 新しい変更を確認します。

オプション2:無料のコントロールパネルに移行する

cPanelは有料のLinuxコントロールパネルです。無料のコントロールパネルに移行したい場合は、オープンソースのバリエーションの大規模なプールから選択できます。ただし、cPanelのバックアップを受け入れるのはごくわずかです。いくつかの無料のコントロールパネルをインストールする方法の詳細なガイドについては、以下を参照してください。

  • Ubuntu20.04にVirtualminをインストールします。
  • Cyber​​Panelをインストールします。
  • HestiaCPをインストールします。
  • Vultrにワンクリック(無料)Pleskをインストールします。

この記事では、cPanelバックアップからの直接復元をサポートしているため、Virtualminを使用します。

Virtualminダッシュボードにログイン

サーバーの追加を展開します 仮想サーバーの移行を選択します 左側のナビゲーションバーのオプションのドロップダウンリストから。

次に、ローカルファイルを選択します ソースバックアップファイルから フィールドに入力し、バックアップファイルディレクトリを入力します。

 /home/example/backup***_***.tar.gz

次に、バックアップファイルタイプの下で 、 cPanel backupを選択します 、次に可能であればバックアップからワークアウトを選択します ドメイン名、ユーザー名、管理者パスワードの各フィールドにそれぞれ。

今すぐ移行をクリックします cPanelデータをVirtualminにインポートします。完了すると、サーバーを使用できるようになります。古いドメイン名のエントリは現在のサーバーオプションに置き換えられるため、ドメインが新しいVultrネームサーバーを指すようにしてください。

オプション3:セルフホストのcPanelに移行する

  • VultrMarketplaceアプリからワンクリックcPanelをデプロイする

デフォルトでは、cPanelはVultrで毎月自動的にライセンスされ、実行するために以前のライセンスは必要ありません。ワンクリックサーバーをスピンしたら、WHMにログインして、復元プロセスを開始します。

http://server-ip:2087

WHMインターフェースを使用して、 Transfersに移動します 、cPanelアカウントの転送と復元を見つけます オプション。次に、サーバーからファイルを選択するか、cPanelバックアップファイルをコンピューターから直接アップロードします。

次に、一致するすべてのレコードを置き換えるを選択します 古いcPanelレコードを削除して新しいサーバーレコードに置き換えます。

復元をクリックします ファイルから新しいcPanelアカウントを作成し、すべてのドメイン、Webファイル、およびメールアカウントをサーバーに復元します。

トラブルシューティング

cPanelアカウントがバックアップでいくつかの機能に制限されている場合 およびバックアップウィザード オプションがない場合でも、サーバーからファイルを移行できます。これを行うには、新しいFTPアカウントを作成します。

cPanelダッシュボードを使用して、ファイルに移動します セクションをクリックし、FTPアカウントをクリックします 。次に、強力なパスワードを使用して新しいFTPアカウントを作成し、バックアップファイルを作成します。

部分バックアップ(Webサイトファイルのみ、メールアカウントなし)

Webサイトのファイルと関連するデータベースのみを移行する場合は、ファイルセクションから[ファイルマネージャー]を選択します。

次に、ファイルマネージャーウィンドウでWebサイトのルートファイルを見つけ、ディレクトリを .zipに圧縮します。 またはtar.gz

新しい圧縮ファイルがディレクトリに追加されます。次に、Webサイトファイルからデータベース名を特定します。 WordPress Webサイトをホストしている場合は、 wp-config.php 必要なデータベース情報が含まれています。データベース名とテーブルプレフィックスをメモしてください。

データベースのバックアップ

メインのcPanelダッシュボードを使用して、データベースに移動します セクションをクリックし、 phpMyAdminをクリックします 。

phpMyAdminにリダイレクトされたら、ターゲットデータベースを選択し、それをコンピューターにエクスポートします。新しい.sql ファイルがコンピュータにダウンロードされます。簡単に識別できるようにファイルの名前を変更します。

Webサイトのファイルサイズによっては、新しいサーバーに簡単に移行できるように、SQLファイルを圧縮ファイルと同じディレクトリにアップロードすることをお勧めします。

新しいサーバーに移行する

ウェブサイトのファイルが読み取り可能な形式に圧縮されたら、SSHで新しいサーバーにログインし、curlを使用してcPanelサーバーからファイルをフェッチします。

Curlをインストールします 、まだインストールされていない場合。

$ sudo apt install curl

次に、ドメイン名、cPanel FTPアカウント、およびパスワードを使用して次のスクリプトを編集します。

Webファイルを取得する:

$ curl -u USERNAME:PASSWORD ftp://localhost/test_curl/filename.tar.gz

SQLデータベースファイルを取得します:

$ curl -u USERNAME:PASSWORD ftp://localhost/test_curl/exampledb.sql

filename.tar.gzを置き換えます 実際の圧縮ファイルと.sql 名前を変更したデータベースファイルを使用します。

接続が確立されると、ファイルが新しいサーバーに追加されます。ファイルを抽出し、オプション1の手順に従います。 この記事のサーバーをセットアップします。

結論

おめでとうございます。cPanelを使用した共有環境からVultrを使用したクラウドホスティング環境に正常に移行しました。ドメインがサーバー上で完全に伝播したら、ダウンタイムやWebサイトでのユーザーアクティビティの中断なしに、共有ホスティングアカウントを安全に削除できます。


cPanel
  1. cPanelアカウントをリセラーホスティングから共有ホスティングに移行する方法

  2. あなたのホスティングにウェブサイトファイルをアップロードする方法

  3. PleskからcPanelに移行する方法

  1. cPanelを使用してクラウドホスティングにドメインを追加する方法

  2. cPanelを使用してクラウドホスティングでメールアカウントを構成する方法

  3. クライアントの既存の cPanel 子アカウントを独自のサーバーに移動する方法

  1. cPanel でサーバーの共有 IP アドレスを見つける方法

  2. VPS で cPanel を更新する方法

  3. cPanel を使用して Web サイトを移行する方法