WordPress là một hệ thống quản lý nội dung khi các nhà phát triển thông minh bắt đầu tạo các plugin và chủ đề mà chúng ta có thể sử dụng để tạo bất kỳ loại trang web nào bằng nó. Lần đầu tiên WordPress được biết đến là có khả năng tạo và quản lý blog một cách dễ dàng. Nhưng chúng ta có thể thấy ngày nay sự phát triển của thương mại điện tử trên WordPress, mọi người cũng đang tạo các trang web kinh doanh hoặc công ty trên WordPress. Tuy nhiên, tất cả các nhà phát triển đều phát triển một trang web cục bộ trên máy tính, sau đó họ phải di chuyển một trang WordPress từ localhost (hay webserver) sang VPS. Bài viết này sẽ cung cấp cho bạn cái nhìn tổng quát về cách di chuyển một trang web WordPress từ localhost sang VPS Ubuntu.
Điều kiện để chuyển một trang web WordPress từ localhost sang VPS Ubuntu
Chúng ta sẽ di chuyển một trang web WordPress sang một máy chủ trực tiếp. Điều đó có nghĩa là VPS của bạn đã sẵn sàng để lưu trữ một trang web. Nếu bạn chưa cài đặt LAMP hoặc LEMP trên VPS của mình, hãy mua VPS Linux và cài đặt LAMP hoặc cài đặt LEMP trên máy chủ của bạn. Bạn cũng cần có quyền truy cập root hoặc đặc quyền sudo trên máy chủ. Đó là bởi vì chúng tôi sẽ tạo một máy chủ ảo trên máy chủ của mình.
Nếu bạn là một nhà phát triển như vậy, bạn rất cần tìm hiểu cách để có thể dễ dàng di chuyển một trang web WordPress mới được phát triển từ localhost sang VPS. Trong bài viết này, ZingServer sẽ trình bày cách hoàn thành mục tiêu này mà không làm hỏng trang web hoặc máy chủ. Dưới đây là các bước cần thiết để di chuyển một trang web WordPress sang VPS Ubuntu.
Hướng dẫn di chuyển một trang web WordPress từ localhost sang VPS Ubuntu
Bước 1: Nén các tập tin WordPress
WordPress là sự kết hợp của các tập tin và cơ sở dữ liệu. Các tệp có nghĩa là cơ sở mã WordPress, plugin, chủ đề và phương tiện của bạn. Cơ sở dữ liệu được sử dụng để theo dõi mọi thứ và lưu trữ các bài đăng trên blog, cấu hình chủ đề, dữ liệu người dùng và nhiều hơn thế nữa. Vì vậy, trước hết chúng ta sẽ nén các tệp WordPress trên localhost. Bạn có thể sử dụng các công cụ như 7zip hoặc zip hoặc tar hoặc bất cứ thứ gì bạn thích để nén toàn bộ thư mục cài đặt WordPress.
Bước 2: Xuất cơ sở dữ liệu
Như chúng tôi đã đề cập ở phần trước, WordPress được tạo thành từ các tệp và cơ sở dữ liệu. Cơ sở dữ liệu rất quan trọng vì tất cả các bài đăng, cấu hình và dữ liệu của bạn đều được lưu trữ trong cơ sở dữ liệu. Việc xuất cơ sở dữ liệu có thể khó khăn tùy theo môi trường của bạn. Nếu bạn đang sử dụng Linux hoặc MacOS, bạn có thể sử dụng lệnh sau trong terminal để xuất cơ sở dữ liệu của mình sang tệp .sql.
$ mysqldump -uDB_USERNAME -p DB_NAME > exported_DB_NAME.sql
Bạn có thể lấy DB_USERNAME, DB_PASSWORD và DB_NAME từ tệp wp-config.php. Sau khi được xuất, chúng ta có thể di chuyển cả tệp và cơ sở dữ liệu sang máy chủ từ xa của mình.
Bước 3: Di chuyển/Sao chép/Tải file và cơ sở dữ liệu lên VPS Ubuntu
Ở bước này, bạn phải tải kho lưu trữ nén và cơ sở dữ liệu lên VPS Ubuntu. Bạn có thể sử dụng SFTP hoặc SCP hoặc bất kỳ phương pháp nào khác. Mục tiêu của chúng ta ở đây là tải cả hai lên VPS. Bạn phải tải nó lên thư mục chính chứ không tải lên bất kỳ cái nào trong số nơi chúng được hiển thị công khai.
Nếu bạn đang sử dụng Linux hoặc MacOS, bạn có thể sử dụng SCP rất dễ sử dụng. Bạn có thể chỉ cần thực hiện các lệnh sau để chuyển tệp của mình từ localhost sang bất kỳ máy nào khác.
$ scp /path/to/file user@server_ip:~
Trong lệnh này, đừng quên thay thế đường dẫn của file và thông tin về VPS Ubuntu của bạn. Bạn có thể sử dụng lệnh tương tự để di chuyển kho lưu trữ nén cũng như cơ sở dữ liệu.
Bước 4: Tạo và nhập cơ sở dữ liệu trên VPS Ubuntu
Vì bây giờ cơ sở dữ liệu và tệp của bạn đã có trên VPS. Điều đầu tiên chúng ta sẽ làm là tạo cơ sở dữ liệu và nhập tệp .sql đã xuất vào cơ sở dữ liệu. Trước hết, chúng ta hãy tạo một cơ sở dữ liệu trong MySQL. Thực hiện lệnh sau để đăng nhập vào MySQL bằng root.
$ mysql -uroot -p;
Nó sẽ yêu cầu mật khẩu, nhập đúng mật khẩu gốc MySQL và sau đó thực hiện các truy vấn sau để tạo cơ sở dữ liệu cùng với người dùng trong MySQL.
mysql> CREATE DATABASE wordpress; mysql> CREATE USER 'wordpressUser'@'localhost' IDENTIFIED BY 'strong_password'; mysql> GRANT ALL PRIVILEGES ON wordpress.* to 'wordpressUser'@'localhost';
Đừng quên thay thế Database name, Username và Password trong các truy vấn này. Khi cơ sở dữ liệu của bạn đã sẵn sàng, hãy thực hiện lệnh exit để thoát MySQL CLI. Bây giờ, thực hiện lệnh sau để nhập cơ sở dữ liệu.
$ mysql -uwordpressUser -p wordpress < /path/to/exported_DB_NAME.sql
=>> Cách đặt lại MySQL Root Password trong Linux và Windows
Bước 5: Tạo thư mục, giải nén file và cập nhật thông tin cơ sở dữ liệu
Trong bước này, chúng ta sẽ tạo một thư mục cho trang web của mình và sau đó giải nén tất cả các tệp bên trong thư mục đó. Thực hiện lệnh sau để tạo thư mục cho trang web của bạn bên trong thư mục /var/www.
$ sudo mkdir /var/www/example.com
Sau khi hoàn tất, hãy di chuyển kho lưu trữ nén của bạn vào thư mục này và giải nén tất cả các tệp trong thư mục này. Bạn cũng phải cập nhật thông tin cơ sở dữ liệu bên trong tệp wp-config.php. Thực hiện lệnh sau để chỉnh sửa tệp wp-config.php.
$ sudo nano /var/www/example.com/wp-config.php
Nhập các giá trị mới vào DB_NAME, DB_USERNAME và DB_PASSWORD mà bạn đã đặt khi tạo cơ sở dữ liệu trên VPS của mình. Bây giờ, điều cuối cùng chúng ta phải làm là cập nhật quyền của tệp. Chúng ta sẽ cấp quyền sở hữu dữ liệu www để bạn có thể tải phương tiện lên và cập nhật chủ đề trực tiếp trong WordPress. Thực hiện lệnh sau để hoàn thành nhiệm vụ này:
$ sudo chown -R www-data:www-data /var/www/example.com
Bước 6: Tạo máy chủ ảo và kích hoạt nó (Apache)
Nếu bạn đang sử dụng máy chủ web Apache, điều này sẽ trở nên dễ dàng với bạn vì Apache cung cấp lệnh trong bản dựng để kích hoạt hoặc hủy kích hoạt các máy chủ ảo. Thực hiện lệnh sau để tạo máy chủ ảo mới trong máy chủ Apache của bạn:
$ sudo nano /etc/apache2/sites-available/example.conf
Và dán nội dung sau vào tập tin. Đừng quên thay thế dữ liệu mẫu bằng dữ liệu thực tế tùy thuộc vào trang web của bạn.
<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 combined </VirtualHost>
Sau khi hoàn tất, hãy nhấn CTRL+X, sau đó là Y, sau đó là Enter để lưu tệp ảo máy chủ. Sau đó, thực hiện lệnh sau để kích hoạt máy chủ ảo.
$ sudo a2ensite example $ sudo service apache2 restart
Bây giờ, trang web của bạn đã có mặt trên Internet!
Bước 7: Tạo máy chủ ảo và kích hoạt nó (Nginx)
Nếu bạn đang sử dụng máy chủ Nginx, bạn phải tạo thủ công một liên kết tượng trưng của máy chủ ảo để kích hoạt nó. Bước đầu tiên là tạo một máy chủ ảo. Thực hiện lệnh sau để tạo máy chủ ảo mới trong Nginx:
$ sudo nano /etc/nginx/sites-available/example.conf
Bây giờ, dán nội dung sau vào tệp máy chủ ảo. Đừng quên thay thế dữ liệu mẫu bằng dữ liệu thực tế trong tệp, nếu không trang web của bạn có thể không hoạt động.
server { listen 80; server_name example.com www.example.com; root /var/www/example.com; access_log /var/log/nginx/example-access.log; error_log /var/log/nginx/example-error.log; }
Bây giờ, thực hiện các lệnh sau để tạo liên kết tượng trưng nhằm kích hoạt máy chủ ảo. Bạn cũng phải khởi động lại máy chủ Nginx để tải cấu hình mới.
$ sudo ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enab
Khi máy chủ Nginx được khởi động lại, trang web của bạn sẽ hoạt động trên Internet.
=>> Cách cài đặt Composer trên Ubuntu
Với 7 bước trên bạn có thể di chuyển cơ sở dữ liệu và tệp một cách an toàn sang máy chủ mới, sau đó kết nối lại cơ sở dữ liệu và tệp đó trên máy chủ mới. Bạn cũng có thể sử dụng plugin WordPress để di chuyển trang WordPress của mình từ máy chủ này sang máy chủ khác. Hãy cho chúng tôi biết qua phần bình luận nếu bạn có bất kỳ câu hỏi nào, bộ phận hỗ trợ của chúng tôi luôn sẵn sàng 24/7 để giải quyết những vấn đề xoay quanh máy chủ VPS Windows/Linux cho bạn. Chúc các bạn thành công!