Đang Tải...

Trang chủ
Tot Blog

Tutorials

Chuyển web WordPress từ cPanel hosting sang VPS Linux

23/05/2023

icon

Chuyển web từ hosting sang VPS giúp mở rộng tài nguyên, dành cho website có lưu lượng truy cập lớn, đảm bảo site hoạt động ổn định hơn. Để tiến hành, cần phải chuẩn bị những gì và có lưu ý gì khi thực hiện? Dưới đây là hướng dẫn dành cho website WordPress chuyển từ hosting cPanel sang VPS Linux.

Mục lục

Mục lục

1. Vì sao cần chuyển web từ cPanel sang VPS Linux?

Website sau một thời gian chạy, hoạt động phát triển, lượng truy cập này càng tăng. Đó là điều ai cũng mong đợi. Lượng truy cập tới một mức nhất định sẽ vượt quá sức tải của hosting. Lúc này, chúng ta cần nâng cấp hay mở rộng. Tuy nhiên, bản chất của shared web hosting nói chung và cPanel hosting nói riêng là chia sẻ tài nguyên với các web khác. Do đó, việc nâng cấp là rất khó.

Giải pháp cho trường hợp này là chuyển web từ shared web hosting sang môi trường VPS. Máy chủ riêng ảo cho phép nâng cấp dễ dàng hơn vì băng thông cũng rộng hơn (không phải share đường truyền với web khác), mức độ lưu trữ thông tin cũng được tăng mạnh.

Vậy tại sao lại là VPS Linux? Bạn cũng có thể chạy Window. Nhưng với Win server, bạn sẽ phải cài nhiều thứ hơn. Chưa kể, Window chạy tốn tài nguyên hơn Linux nên sẽ ko tối ưu được chi phí khi vận hành.

2. Các bước chuyển web từ cPanel hosting sang VPS Linux

Để có thể dựng lại 1 web ta cần:

  • Một VPS có cấu hình phù hợp chạy Linux. Tham khảo: VPS Linux của TotHost
  • Bản backup thông tin của server bao gồm:
    • Toàn bộ code của web
    • Dữ liệu của SQL

Lấy thông tin Web server

Đầu tiên, ta cần biết các thông tin cơ bản để chuẩn bị, như phiên bản SQL, PHP,… Hãy ấn vào Server Information ở dưới:

Cách lấy thông tin server trước khi chuyển web từ cPanel sang VPS

Sau khi ấn vào, ta sẽ có đầy đủ thông tin của server như sau:

Thông tin server cần thiết khi chuyển web từ shared webhosting sang vps

Thiết lập cho server

Trước khi bắt đầu chuyển đổi, ta cần chuẩn bị trước các dịch vụ cần thiết để web có thể hoạt động bình thường trên server mới. Ở đây, TotHost sử dụng OS là Ubuntu20.04 để dựng lại website.

  • Bước 1. Đầu tiên, cập nhập server để đảm bảo các service hiện tại ở trạng thái mới nhất và tốt nhất:
sudo apt-get update && sudo apt-get upgrade -y
  • Bước 2. Xác định phiên bản MySQL để tìm bản cài phù hợp. Nếu sai phiên bản, khi thêm DB vào sẽ gặp rất nhiều vấn đề liên quan đến tích hợp giữa các service. Do đó, việc cài đúng phiên bản rất quan trọng.

Theo thông tin server lấy được ở (2.1), Cpanel này đang sử dụng MySQL 8.0. Hiện, MySQL đã chuyển thành MariaDB nên ta sẽ phải kiếm source từ dev

wget https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb
  • Bước 3. Sau khi đã tải về được MySQL package, ta sẽ bắt đầu cài gói này lên Repository
sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb
Hộp thoại config mysql lên repository
Khi hộp thoại hiện lên, chọn <Ok>
Hộp thoại config mysql lên repository
Chọn “mysql-8.0” và tiếp tục chọn <Ok>
  • Ta update lại thêm cái nữa để cho mượt: sudo apt update
  • Tiếp theo, ta cài đặt nó lên từ Repository mà ta đã cài từ lúc trước: sudo apt install -f mysql-client=8.0* mysql-community-server=8.0* mysql-server=8.0*
  • Check lại phiên bản 1 lần nữa để đảm bảo là đã cài đúng: mysql –V
  • Bước 4. Dựng lên WebServer: sudo apt install apache2 -y
  • Bước 5. Bật service lên
systemctl start apache2
systemctl enable apache2
  • Bước 6. Cài PHP và tất cả các package
sudo apt -y install php7.4
sudo apt-get install -y php7.4-cli php7.4-json php7.4-common php7.4-mysql php7.4-zip

Tiến hành chuyển đổi web từ cPanel hosting sang VPS

Sau khi đã cài xong các service cần thiết để chạy, ta sẽ bắt đầu đẩy dữ liệu từ hosting cPanel sang VPS Linux mới.

Đầu tiên là Database

  • Bước 1. Vào File Manager → public_html → chọn wp-config.php → chọn view để thấy tên DB
Cách lấy tên db
  • Bước 2. Vào Backup → chọn Download a MySQL Database Backup để download database đấy về.
download db để chuyển web từ cpanel hosting sang vps linux
  • Bước 3. Vào MySQL, tạo lại 1 DB trùng tên và 1 tài khoản tương tự trong file wp-config.php
mysql> CREATE DATABASE wordpress ;
mysql> CREATE USER ‘ wordpressUser ‘ @ ‘localhost’ IDENTIFIED BY ‘ strong_password ‘;
mysql> GRANT ALL PRIVILEGES ON wordpress . * to ‘ wordpressUser ‘ @ ‘localhost’;

Hãy nhớ thay thế tên cơ sở dữ liệu, tên người dùng và mật khẩu trong các truy vấn này. Sau khi cơ sở dữ liệu đã sẵn sàng, hãy thực hiện exit lệnh để thoát khỏi MySQL CLI

  • Bước 4. Restore dữ liệu ta vừa tải về. Đầu tiên, hãy đẩy file database vừa tạo lên server. Khi tải về, file sẽ có dạng <databse_name>.sql.gz vậy nên ta sẽ chạy lệnh dạng như sau:
gunzip < <databse_name>.sql.gz | mysql -u root -p <databse_name>

Setup apache

  • Bước 1. Lấy bản backup của web cũ tại Backup → chọn Download a Home Directory Backup. Ta đẩy và giải nén vào thư mục /var/www sau đó.
  • Bước 2. Đổi về quyền của apache: Khi ta giải nén thì thư mục đó vẫn đang thuộc quyền với user/root nên apache không có quyền đọc dữ liệu, ta cần phải đổi về quyền của apache
sudo chown -R www-data:www-data /var/www/example.com

Tạo site và bật site lên

  • Bước 1. Tạo 1 file cấu hình

sudo vi /etc/apache2/sites-available/example.conf

  • Bước 2. Nhập dữ liệu dưới đây vào:
<VirtualHost *: 80> 
    ServerAdmin [email protected] 
    ServerName example.com 
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com
    ErrorLog /var/log/apache2/example-error.log 
    CustomLog /var/log/apache2/example-access.log combine

</VirtualHost>

Nếu web của bạn sử dụng SSL, hãy duplicate đoạn trên, thay :80 bằng :443 và thêm đường dẫn key sau đây vào:

SSLCertificateFile <link>/fullchain.pem
SSLCertificateKeyFile <link>/privkey.pem
  • Bước 3. Chạy lệnh để bật site của bạn lên
$ sudo a2ensite example
$ sudo service apache2 restart

Việc cuối cùng là trỏ lại domain về IP là bạn đã hoàn thành rồi.

Bạn có thể tìm hiểu thêm về WordPress qua bài viết: WordPress là gì? Tất cả các kiến thức bạn cần biết về WordPress 2024

TelegramCommunity
scroll top
Thông báo
Đóng