Cách xây dựng staging site trong WordPress cho beginner

Ngay sau khi website của bạn được public cho mọi người truy cập, chắc chắn bạn vẫn cần phải cải tiến và cập nhật wesbite. Khi website đã chạy online như vậy chúng ta thường gọi nó live site hay production site.

Việc cập nhật live site luôn ẩn chứa mối nguy cơ gây chết trang web. Ví dụ điển hình như lỗi trắng trang. Hay tình huống phổ biến hơn là sau khi cài đặt một plugin mới bạn mới tá hỏa vì nó xung đột với theme và các plugin khác.

Việc live site bị chết có thể gây ảnh hưởng đến trải nghiệm người dùng. Hậu quả càng nghiêm trọng khi site bạn đã có lượng traffic hàng ngày tương đối lớn, nhất là những site thương mại điện tử.

Vậy đâu là cách an toàn để cập nhật và chỉnh sửa website đã được phát hành?

Bạn nên tạo ra một staging site. Staging site là những site không được public chỉ có bạn hoặc team của bạn có thể truy cập được.

Việc chỉnh sửa trên staging site cũng sẽ không ảnh hưởng gì đến live site. Điều này cũng giảm một phần áp lực tâm lý khi bạn cần sửa nhiều code hoặc có tùy biến sâu trang web của bạn.

Sau khi bạn test kỹ lượng trên staging site, bạn có thể yên tâm triển khai những thay đổi đó lên live site.​

Trong bài viết này, mình sẽ chỉ cho bạn cách tạo một staging site trong WordPress. Chúng ta sẽ sử dụng hai phương pháp.

Thứ nhất chúng ta sẽ sử dụng một plugin và cách còn lại là tạo staging site thủ công.

Tạo staging site sử dụng plugin WP Staging

Đây là cách đơn giản và nhanh chóng để tạo một stagin site. Cách làm này thích hợp khi bạn muốn kiểm tra thử một theme hay plugin cho website của bạn.

Nếu bạn muốn chỉnh sửa nhiều hơn đặc biệt là sửa code, bạn nên làm theo cách tạo staging site thủ công bên dưới.

Đầu tiên bạn cần cài đặt và activate plugin WP Staging.

Ngay sau khi plugin đã được activate, bạn sẽ nhìn thấy sidebar của WP Dashboard có mục mới có tên “WP Staging”. Click vào đó bạn sẽ đi tới giao diện cho phép bạn tạo một staging site

staging site 4

Click vào nút Create new staging site. Tiếp theo bạn nhập vào tên gọi cho trang staging site chẳng hạn staging. Sau khi nhập xong, bạn click vào nút Start Cloning

staging site 5

Quá trình tạo staging site nhanh hay chậm tùy thuộc vào dung lượng site của bạn. Sau khi tiến trình hoàn tất, bạn click vào nút Open staging site để đăng nhập staging site. Bạn vẫn sử dụng tài khoản admin hiện tại của bạn để đăng nhập

staging site 6

Để phân biệt staging site với live site bạn sẽ nhin thấy thanh admin bar màu da cam cho staging site

staging site 7

Cách đẩy thay đổi tới live site

Đáng tiếc plugin này không hỗ trợ đẩy những thay đổi của bạn sang live site. Bạn chỉ có thể đẩy thay đổi bằng cách thủ công.

Nhưng cá nhân mình thấy đẩy thủ công cũng tương đối khó khăn nhất là phần database. Plugin này clone các bảng ngay trong db của live site. Các bảng mới sẽ lấy tên của bảng cũ được đặt với prefix là tên của staging site bạn nhập ở trên.

Cách làm này khiến bạn khó sử dụng plugin WP Migrate DB để migrate db từ staging site sang live site. Điều này chính là điểm yếu so với việc tạo staging site thủ công như bên dưới.

Vậy nên việc tạo staging site sử dụng plugin này chỉ thích hợp cho việc tạo ra một môi trường cho bạn nghịch các plugin hay theme cho website của bạn.

Cách tạo staging site bằng phương pháp thủ công

Với cách làm này mình sẽ tạo một staging site trên một subdomain. Sau đó bạn sẽ clone live site về subdomain này.

Bước 1: Tạo subdomain sử dụng cPanel

Đầu tiên, bạn cần tạo subdmain để lưu trữ staging site. Bạn đi tới cPanel, và di chuyển xuống phần Domains. Ở đây bạn click vào Subdomains

staging site 1

Sau đó, bạn nhập vào tên của subdomain chẳng hạn “staging

staging site 2

Sau khi bạn tạo xong domain trong cPanel, bạn cần cập nhật DNS của domain. Vì mình sử dụng CloudFlare làm DNS trung gian, nên mình sẽ tạo một bản ghi như sau trong phần DNS của CloudFlare:

staging site 3

Bước 2: Clone live site sang staging site

a. Tạo package chứa souce code và database của live site

Để clone live site sang staging site, bạn cần cài đặt và kích hoạt plugin Duplicator trong live site.

Ngay khi plugin được kích hoạt, bạn đi tới Duplicator và click vào nút Create New

staging site 8

Tiếp theo, bạn click vào nút Next

staging site 9

Plugin sẽ scan website của bạn. Có thể bạn sẽ có một vài cảnh báo. Bạn có thể bỏ qua bằng cách chọn Yes và click và nút Build

staging site 10

Ngay sau khi package được tạo, bạn cần tải về máy 2 file Installer và Archive.

staging site 11

​b. Tạo database cho staging site

Nhiệm vụ tiếp theo là bạn cần tạo database cho staging site. Đi tới cPanel, click vào MySQL Databases.

staging site 12

Nhập vào tên database bạn muốn. Click vào nút Create Database

staging site 13

Tiếp theo cũng trong màn hình tạo database bạn kéo xuống dưới và nhập vào thông tin của user. Sau khi xong, click vào nút Create User

staging site 14

Cuối cùng bạn cần gán user vào database bạn vừa tạo.

staging site 15

Ở màn hình quản lý quyền, bạn nhớ chọn tất cả các quyền cho user

staging site 16

c. Triển khai soucre code và database sang staging site

Bạn cần upload 2 file installer và archive bạn tải ở bước trên lên staging site sử dụng File Manager.

Sau đó, bạn truy cập file installer với đường dẫn sau: http://staging.yourdomain.com/installer.php. Lúc này bạn sẽ nhìn thấy màn hình deploy của Duplicate như bên dưới

staging site 17

Bạn chọn tùy chọn “Connect and Remove All Data” và nhập vào thông tin cơ sở dữ liệu bạn đã tạo ở bước trên. Bạn có thể click vào nút Test Connection để kiểm tra xem thông tin bạn nhập vào đã chính xác hay chưa. Click vào nút Run deployment để bắt đầu quá trình triển khai.

Ở hộp thoại xổ ra, bạn chỉ cần click vào nút Yes

staging site 18

Duplicator sẽ tự động thay thế đường dẫn của live site bằng staging site. Bạn click vào Run Update để tiếp tục.

staging site 19

Bước cuối cùng bạn cần click vào nút Save Permalinks và dọn dẹp những file duplicator sinh ra.

staging site 20

Bước 3: Hạn chế truy cập staging site

Staging site là site bạn không public cho mọi người truy cập. Do vậy bạn cần ngăn không cho con bọ của Google đánh chỉ mục site của bạn. Để làm vậy, bạn đi tới Setting -> Reading. Chọn tùy chọn như bên dưới. Nhớ click nút Save Changes để lưu lại thay đổi của bạn.

staging site 21

Nếu bạn muốn giới hạn truy cập chặt chẽ hơn, bạn có thể sử dụng plugin Hide My Site. Lúc này visitor hay bộ máy tìm kiếm sẽ cần phải có password mới truy cập staging site được.

Cách đẩy thay đổi sang live site

Cũng như plugin WP Staging, với phương pháp này bạn không có tùy chọn tự động đẩy thay đổi sang live site. Bạn cần thực hiện việc này thủ công.

Nhưng so với plugin WP Staging mình thấy dễ dàng hơn nhất là phần migrate cơ sở dữ liệu.

Về điểm này, bạn có thể sử dụng plugin WP Migrate DB như bên dưới.

Đẩy thay đổi sang live site bạn cần làm thứ:

Đầu tiên, bạn đấy thay source code từ staging site sang live site. Bạn có thể sử dụng File Manager hoặc FTP. Sử dụng File Manager sẽ nhanh hơn.

Cuối cùng bạn migrate cơ sở dữ liệu từ staging site sang live site. ​

Cách migrate cơ sở dữ liệu từ staging site sang live site.

Bạn cài đặt và activate plugin WP Migrate DB. Sau khi plugin được activate, bạn đi tới Tools -> Migrate DB

Ở phần Replace bạn cần nhập vào đường dẫn live site . Có như vậy sau khi migrate cơ sở dữ liệu, live site mới hoạt động được.

staging site 22

Sau khi bạn click vào nút Export, bạn sẽ nhận được file sql. Bạn chỉ cần sử dụng PhpMyAdmin trong cPanel để đi tới cơ sở dữ liệu của live site và import file sql. Thế là xong.

Lời kết

Tạo staging site chính là cách an toàn nhất để thực hiện những thay đổi bạn muốn có cho live site.

Bạn có thể sử dụng plugin hay phương pháp thủ công để tạo một staging site. Nếu bạn chỉ cần kiểm tra thử plugin có tương thích với website của bạn, hãy sử dụng plugin WP Staging để tạo staging stie.

Trong trường hợp bạn muốn thực hiện chỉnh sửa nhiều hơn, hãy tạo staging site bằng phương pháp thủ công.

Đây là những cách mình tạo staging site. Nếu bạn còn biết thủ thuật hay cách nào hay để tạo staging site, hãy chia sẻ ở phần comment bên dưới.

icon made by http://www.flaticon.com/authors/madebyoliver from ww.flaticon.com