Di chuyển website từ máy chủ này sang máy chủ khác

  1. Kết nối SSH với máy chủ.
  2. Download mã nguồn wesite và database từ máy chủ cũ.
  3. Upload mã nguồn website và database lên máy chủ mới.
  4. Chuyển database cũ vào data mới với user mới.
  5. Cấu hình lại thông tin cho website và các DNS record.
  6. Đăng ký lại các chứng chỉ bảo mật SSL.

Trước khi thực hiện thì máy chủ mới cần cài đặt các gói cho webserver như LAMP (Apache, MariaDB(hoặc MySQL), PHP, phpmyadmin).

Mở port 80 và 443 trên firewall cho webserver (nếu chưa mở).

sudo apt install ufw
sudo ufw enable
sudo ufw status
sudo ufw allow 22/tcp (cho SSH)
sudo ufw allow 80/tcp (cho HTTP) 
sudo ufw allow 443/tcp (cho HTTPS)
sudo ufw status (kiểm tra lại các port đã mở)

Cài đặt Bitvise SSH client trên Windows để truy cập vào máy chủ thông qua SSH

Link download: https://dl.bitvise.com/BvSshClient-Inst.exe.

Lấy thông tin gồm địa chỉ IP, user root và password của máy chủ cũ và máy chủ mới.

Đăng nhập máy chủ qua cổng 22 SSH.

  • Host: địa chỉ IP máy chủ.
  • Port: 22.
  • Username: root.
  • Initial method: password.
  • Password: mật khẩu của root.

Download mã nguồn wesite và cơ sở dữ liệu từ máy chủ cũ

Mở mục New terminal console trên cửa sổ bitvise SSH Client, truy cập đến thư mục chứa source của website ở đây là /var/www/html/ và nén toàn bộ tập tin và thư mục vào file backup.

tar -cvzf backup.tar.gz /var/www/html/*

Mở mục New SFTP console .

  • Bên tap Remote files chọn đến đường dẫn chứa sourse website, ở đây là /var/www/html.
  • Chọn tập tin vừa nén tải về thư mục bên tab Local files.

Mở trình duyệt web truy cập mày phpmyadmin.

https://ten_mien/phpmyadmin/

Chọn tab Export -> nhấn nút Export sẽ tự động download tập tin .sql về máy.

Upload mã nguồn website và database lên máy chủ mới

Mở một cửa bitvise SSH Client khác để đăng nhập máy chủ mới.

Tạo một thư mục mới trên máy chủ mới để chứa website mới.

mkdir /var/www/hanabi-jinzai.com

Upload file backup website và file database .sql lên thư muc trên máy chủ mới

Di chuyển vào thư mục vừa tạo và giải nén tập tin backup.

cd /var/www/hanabi-jinzai.com
tar -xvzf backup.tar.gz

Tạo một database và user cho cơ sở dữ liệu mới.

mysql -u root -p
CREATE DATABASE hanabizinjaicom;
CREATE USER hanabijinzaicom@localhost IDENTIFIED BY '********';
GRANT ALL PRIVILEGES ON hanabijinzaicom.* TO hanabijinzaicom@localhost;
FLUSH PRIVILEGES;
EXIT;
systemctl restart mariadb

Cấu hình lại thông tin cho website cũ và các DNS record

Sửa file cấu hình wordpress wp-config.php.

nano /var/www/hanabi-jinzai.com/wp-config.php
/** The name of the database for WordPress */
define( 'DB_NAME', 'hanabijinzaicom' );

/** Database username */
define( 'DB_USER', 'hanabijinzaicom' );

/** Database password */
define( 'DB_PASSWORD', '********' );

/** Database hostname */
define( 'DB_HOST', 'localhost:3306' );

$table_prefix = 'oZJCK_';

define('WP_ALLOW_MULTISITE', true);

Cấu hình multisite.

sudo a2enmod rewrite
sudo a2enmod vhost_alias

Sửa file cấu hình apache.

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/hanabi-jinzai.com.conf
nano /etc/apache2/sites-available/hanabi-jinzai.com.conf
------
<VirtualHost *:80>
...
ServerAdmin zapnho@z-log.net
ServerName hanabi-jinzai.com
ServerAlias www.hanabi-jinzai.com
DocumentRoot /var/www/hanabi-jinzai.com

<Directory /var/www/hanabi-jinzai.com>
     Options Indexes FollowSymLinks
     AllowOverride All
     Require all granted
</Directory>

<Directory /var/www/hanabi-jinzai.com>
Directoryindex index.php
</Directory>
...
</VirtualHost>
------
a2ensite hanabi-jinzai.com.conf
systemctl restart apache2

Cập nhật các bản ghi DNS về IP máy chủ mới.

Truy cập phpmyadmin bằng trình duyệt, đăng nhập user mật khẩu.

http://hanabi-jinzai.com/phpmyadmin/

Chọn tab Import -> Chọn file .sql từ ô Browse -> nhấn Import.

Chạy lại các chứng chỉ bảo mật SSL

  • Cài đặt Cerbot.
sudo apt-get update
sudo apt-get install certbot
  • Cài đặt Apache/Nginx plugin (nếu cần).
sudo apt-get install python3-certbot-apache
  • Lấy và cài đặt chứng chỉ SSL.
sudo certbot --apache -d ten_mien1
sudo certbot --apache -d ten_mien2
  • Theo hướng dẫn và hoàn tất quá trình cấu hình.

Nhập email->y->y.


Cách thực hiện bằng dòng lệnh

Trước khi thực hiện thì máy chủ mới cần cài đặt các gói cho webserver như LAMP (Apache, MariaDB(hoặc MySQL), PHP, phpmyadmin).

Mở port 80 và 443 trên firewall cho webserver (nếu chưa mở).

sudo apt install ufw
sudo ufw enable
sudo ufw status
sudo ufw allow 22/tcp (cho SSH)
sudo ufw allow 80/tcp (cho HTTP) 
sudo ufw allow 443/tcp (cho HTTPS)
sudo ufw status (kiểm tra lại các port đã mở)

Nén thư mục chứa mã nguồn website và giải nén về máy chủ mới

Đăng nhập vào máy chủ mới.

Kết nối vào máy chủ cũ từ máy chủ mới bằng SSH port 22 bằng tài khoản root:

ssh root@45.76.104.160
(nhập password root của máy chủ cũ)

Nén toàn bộ thư mục chứa source website và gửi tới máy chủ mới giải nén

cd /var/www/html/
tar -cvzf backup.tar.gz * (nén toàn bộ tập tin và thư mục tại thư mục hiện hành)
exit (thoát khỏi máy chủ cũ)
scp root@45.76.104.160:/var/www/html/backup.tar.gz /var/www/hanabi-jinzai.com (copy file vừa nén từ máy chủ củ về máy chủ mới)
cd /var/www/hanabi-jinzai.com/ 
tar -xvzf backup.tar.gz (giải nén toàn bộ vào thư mục chứa website mới)

Xuất cơ sở dữ liệu từ máy chủ cũ nhập về máy chủ mới

ssh root@45.76.104.160
mariadb -u root -p
SELECT User FROM mysql.user; (Xem user)
SHOW DATABASES; (Xem database)
ALTER USER 'username'@'localhost' IDENTIFIED BY 'new_password';
EXIT;
mysqldump -u root -p database_name > backup.sql
(Nhập mật khẩu)
exit
scp root@45.76.104.160:/root/backup.sql /var/www/hanabi-jinzai.com
mariadb -u root -p
CREATE DATABASE hanabijinzaicom; (tạo database mới)
CREATE USER 'hanabijinzaicom'@'localhost' IDENTIFIED BY '********';
GRANT ALL PRIVILEGES ON hanabijinzaicom.* TO 'hanabijinzaicom'@'localhost';
FLUSH PRIVILEGES;
EXIT;
mysql -u hanabijinzaicom -p hanabijinzaicom < backup.sql

Sửa file cấu hình wordpress wp-config.php

nano wp-config.php

// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'hanabijinzaicom' );

/** Database username */
define( 'DB_USER', 'hanabijinzaicom' );

/** Database password */
define( 'DB_PASSWORD', 'Hnbjzc280319tamtam#' );

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

define('WP_ALLOW_MULTISITE', true);

Cấu hình multisite.

sudo a2enmod rewrite
sudo a2enmod vhost_alias

Sửa file cấu hình apache

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/hanabi-jinzai.com.conf
nano /etc/apache2/sites-available/hanabi-jinzai.com.conf
------
<VirtualHost *:80>
...
ServerAdmin zapnho@z-log.net
ServerName hanabi-jinzai.com
ServerAlias www.hanabi-jinzai.com
DocumentRoot /var/www/hanabi-jinzai.com

<Directory /var/www/hanabi-jinzai.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

<Directory /var/www/hanabi-jinzai.com>
Directoryindex index.php
</Directory>
...
</VirtualHost>
------
a2ensite hanabi-jinzai.com.conf
systemctl restart apache2

Cập nhật các bản ghi DNS trên trang quản lý tên miền

Cài và chạy lại các chứng chỉ bảo mật SSL

  • Cài đặt Cerbot.
sudo apt-get update
sudo apt-get install certbot
  • Cài đặt Apache/Nginx plugin (nếu cần).
sudo apt-get install python3-certbot-apache
  • Lấy và cài đặt chứng chỉ SSL.
sudo certbot --apache -d ten_mien1
sudo certbot --apache -d ten_mien2
  • Theo hướng dẫn và hoàn tất quá trình cấu hình.

Nhập email->y->y.

Bình luận

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *