EasyEngine (ee) là một tập lệnh shell linux, giúp quản lý và cài đặt các trang web WordPress của bạn trên máy chủ Ubuntu dễ dàng. EasyEngine hoạt động tốt và nhanh hơn Apache, đặc biệt khi số lượng người truy cập trang web đồng thời đang tăng lên. EasyEngine hoạt động trên các máy chủ sử dụng Ubuntu hoặc Debian, nhưng hầu hết các thử nghiệm chính thức được thực hiện trên Ubuntu.
Điều kiện để cài đặt EasyEngine
- Một Vps/ Dedicated server mới
- Đã cài đặt Hệ điều hành Ubuntu
- RAM tối thiểu 2GB
- HDD/SSD tối thiểu 25GB
- Đặc quyền đăng nhập Root
Trong bài viết này, chúng tôi sẽ hướng dẫn cài đặt EasyEngine v4 trên Ubuntu 16.04, 18.04 và 20.04
Cập nhật hệ thống
Để cập nhật hệ thống, chạy lệnh:
# apt update -y
-y là một tham số tùy chọn. Nó phục vụ để tránh các câu hỏi xác nhận ở các bước tiếp theo.
Nếu lệnh sudo chưa cài đặt trên Ubuntu, chạy lệnh:
# apt install sudo
Cài đặt EasyEngine
# wget -qO ee rt.cx/ee4 && sudo bash ee
Sau khi cài đặt thành công, có thể kiểm tra phiên bản bằng lệnh:
# ee --version
Tạo website trong EasyEngine
Tao một web WordPress + Redis/ Proxy Cache + php 7.4 + Let’s Encrypt & Wildcard:
# ee site create example.com --type=wp --cache --proxy-cache=on --dbprefix=yahsne_ --admin-user=ten_dang_nhap_website--admin-pass=mat_khau_dang_nhap_website --admin-email=tenban@example.com --php=7.4 --ssl=le --wildcard
Tạo WordPress Multisite + Redis Cache + php + Let’s Encrypt & Wildcard::
# ee site create example.com --wpsubdir --cache --proxy-cache=on --dbprefix=qpnadthx_ --admin-user=ten_dang_nhap_website --admin-pass=mat_khau_dang_nhap_website --admin-email=tenban@gmail.com --ssl=le --wildcard
Sau khi khởi tạo website, cần chmod cho website:
# chown -R www-data:www-data /var/lib/docker/volumes/examplecom_htdocs/_data/htdocs
Thêm Alias Domains:
# ee site update example.com --add-alias-domains='c.com,d.com' --delete-alias-domains='b.com'
Lưu ý: Những chữ được tô màu cần thay đổi sang thông tin của bạn.
Quản lý website
Sau khi tạo bất kỳ một website ở bước 3, bạn có thể quản lý các website tại /opt/easyengine/sites, bao gồm nginx, php, logs và mã nguồn website, các thư mục khác là các tính năng chuyên sâu, bạn không cần thiết sử dụng đến.
Các lệnh cơ bản
Sau đây là một số lệnh cơ bản mà bạn có thể cần phải sử dụng:
Khởi động lại global proxy:
# ee service restart nginx-proxy
Xóa một website:
# ee site delete example.com
Khởi động lại nginx sau khi bạn thay đổi cấu hình:
# ee site restart example.com --nginx
Khởi động lại php khi bạn thay đổi cấu hình:
# ee site restart example.com --php
Xóa tất cả Cache cho một website:
# ee site clean example.com
Kiểm tra Log, chạy lệnh:
# docker logs --tail=10 -f services_global-nginx-proxy_1
Tạo một Script tự động xóa Log cho website
Đầu tiên tạo một tệp weblog.sh trong thư mục root, chạy lệnh:
# sudo nano /root/cronjob/weblog.sh
Nhập vào nội dung dưới đây:
#!/bin/sh find /var/lib/docker/volumes/example_log_nginx/_data -name '*.log' -exec rm -f {} \; find /var/lib/docker/volumes/example_log_php/_data -name '*.log' -exec rm -f {} \;
Sau khi cấu hình xong, bấm ctrl+ O và nhấn Enter để lưu lại, bấm ctrl+ X để thoát.
Chmod bằng lệnh:
# chmod +x /root/cronjob/weblog.sh
# chmod a+x /root/cronjob/weblog.sh
# chmod -R 0755 /root/cronjob/weblog.sh
Bây giờ bạn cần tạo một Cron job để chạy tệp weblog.sh theo lịch trình.
Mở Crontab, chạy lệnh:
# crontab -e
Nhập vào dưới cùng nội dung sau:
0 2 * * * /root/cronjob/weblog.sh >/dev/null 2>&1 #Đoạn mã trên chạy vào lúc 2:00 AM mỗi ngày.
Khởi động lại Cronjob, chạy lệnh:
# /etc/init.d/cron restart
Usage: {start|stop|status|restart|reload|force-reload}
Quản lý phpMyAdmin trong EasyEngine
Bật tính năng phpMyAdmin cho một website:
# ee admin-tools enable example.com
Tắt tính năng phpMyAdmin cho một website:
# ee admin-tools disable example.com
Sau khi bật tính năng phpMyAdmin cho một website, bạn có thể truy cập theo đường dẫn https://example.com/ee-admin/pma/
Lấy mật khẩu Auth để đăng nhập vào phpMyAdmin:
# ee auth list global
Nếu bạn quên mật khẩu root để đăng nhập phpMyAdmin, chạy lệnh:
# cat /opt/easyengine/services/docker-compose.yml | grep MYSQL_ROOT_PASSWORD
Import database, chạy lệnh:
# ee shell example.com --command='wp db import example_com.sql'
Export database, chạy lệnh:
# ee shell example.com --command='wp db export'
Giới hạn MariaDB log
Truy cập thư mục và mở tệp: /var/lib/docker/volumes/global-db_db_conf/_data/conf.d/ee.cnf
Tìm dòng:
expire_logs_days = 10 max_binlog_size = 100M
Đổi thành:
expire_logs_days = 1 max_binlog_size = 10M
Khởi động lại máy chủ:
Reboot
Thay đổi Powered-By
# grep -r "X-Powered-By" /var/lib/docker/overlay2/* | grep version.conf
Đầu ra như sau:
root@CentOS:~# grep -r "X-Powered-By" /var/lib/docker/overlay2/* | grep version.conf /var/lib/docker/overlay2/31f99aa1a00cd6f5556363c15e9e1b196dd934bf2ef522da8de1aaba0c3e255a/diff/version.conf:add_header X-Powered-By "EasyEngine v4"; /var/lib/docker/overlay2/888337968ea5d90ab3043f00f86436f0cc8877e435c9596c3fd962a53ad54ab0/merged/version.conf:add_header X-Powered-By "EasyEngine v4.1.5"; /var/lib/docker/overlay2/888337968ea5d90ab3043f00f86436f0cc8877e435c9596c3fd962a53ad54ab0/diff/version.conf:add_header X-Powered-By "EasyEngine v4.1.5";
Sau đó truy cập theo đường dẫn thư mục:
/var/lib/docker/overlay2/31f99aa1a00cd6f5556363c15e9e1b196dd934bf2ef522da8de1aaba0c3e255a/diff/version.conf /var/lib/docker/overlay2/888337968ea5d90ab3043f00f86436f0cc8877e435c9596c3fd962a53ad54ab0/diff/version.conf
Tìm dòng:
add_header X-Powered-By "EasyEngine v4.1.5";
Đổi thành:
add_header X-Powered-By "SiuWeb";
Khởi động lại máy chủ:
# reboot
Kiểm tra lại X-Powered-By, chạy lệnh:
# curl -X GET -I https://example.com
Kết thúc !
Nếu có ý kiến đóng góp, vui lòng để lại bình luận bên dưới.