Cài Đặt và Cấu Hình ExpressionEngine CMS Trong Môi Trường ServBay
Tổng Quan
ExpressionEngine là một hệ quản trị nội dung (CMS) mạnh mẽ, linh hoạt, được sử dụng rộng rãi để xây dựng nhiều loại website và ứng dụng web phức tạp. Nó cung cấp các tính năng cốt lõi đa dạng và kiến trúc module hóa cao, cho phép lập trình viên và thiết kế viên tạo lập, tùy chỉnh website một cách linh động.
ServBay là một môi trường phát triển web cục bộ dành riêng cho macOS, mang đến giải pháp ‘tất cả trong một’ với sự tích hợp của các máy chủ web phổ biến (như Nginx, Caddy, Apache), các runtime ngôn ngữ lập trình (PHP, Node.js, Python, Go, Java, Ruby, Rust, .NET), cơ sở dữ liệu (MySQL, PostgreSQL, MongoDB, Redis) cùng nhiều công cụ phát triển (Composer, npm/yarn, phpMyAdmin/Adminer). Nhờ ServBay, các nhà phát triển dễ dàng dựng và quản lý môi trường phát triển tại chỗ.
Bài viết này sẽ hướng dẫn chi tiết cách cài đặt và cấu hình ExpressionEngine trên ServBay, giúp bạn nhanh chóng bắt đầu dự án ExpressionEngine của mình.
Vì Sao Nên Cài ExpressionEngine Bằng ServBay?
Sử dụng ServBay để cài đặt ExpressionEngine cục bộ có các ưu điểm sau:
- Tích hợp môi trường: ServBay tích hợp sẵn runtime PHP, cơ sở dữ liệu MySQL và máy chủ web cần thiết cho ExpressionEngine, không cần cài đặt từng phần riêng lẻ.
- Hỗ trợ đa phiên bản: Dễ dàng chuyển đổi hoặc chọn các phiên bản PHP khác nhau trên ServBay phù hợp yêu cầu của ExpressionEngine.
- Quản lý cơ sở dữ liệu thuận tiện: ServBay có sẵn phpMyAdmin hoặc Adminer giúp bạn dễ dàng tạo và quản lý cơ sở dữ liệu cho ExpressionEngine.
- Cấu hình website đơn giản: Giao diện đồ họa của ServBay cho phép nhanh chóng tạo và trỏ website đến thư mục dự án ExpressionEngine.
- Cô lập & quản lý: ServBay cho phép mỗi dự án một cấu hình website riêng biệt, tránh xung đột môi trường giữa các dự án.
Điều Kiện Tiên Quyết
Trước khi bắt đầu, hãy đảm bảo bạn đã đáp ứng các điều kiện sau:
- Đã cài đặt và chạy ServBay trên hệ điều hành macOS. Nếu chưa cài, hãy truy cập ServBay Trang chính thức để xem hướng dẫn.
- Có kiến thức cơ bản về thao tác dòng lệnh (Terminal).
- Hiểu biết khái niệm cơ sở dữ liệu (như database, user).
- Có quyền ghi đối với thư mục website gốc mặc định của ServBay
/Applications/ServBay/www
.
Các Bước Cài Đặt
Chúng ta sẽ tiến hành cài đặt và cấu hình ExpressionEngine trên ServBay thông qua các bước sau.
Bước 1: Chuẩn Bị Thư Mục Dự Án và Tải ExpressionEngine
Trước tiên, hãy mở ứng dụng Terminal. Điều hướng đến thư mục gốc của ServBay là /Applications/ServBay/www
, tạo thư mục dự án mới (ví dụ servbay-ee-app
), rồi truy cập vào thư mục đó.
cd /Applications/ServBay/www
mkdir servbay-ee-app
cd servbay-ee-app
2
3
Tiếp theo, dùng lệnh curl
để tải về ExpressionEngine phiên bản mới nhất vào thư mục hiện tại. Tham số -L
để theo dõi tuyến chuyển hướng, -o
chỉ định tên file xuất ra.
curl -L https://expressionengine.com/latest -o expressionengine.zip
Bước 2: Giải Nén File ExpressionEngine
Sau khi tải xong, sử dụng lệnh unzip
để giải nén file expressionengine.zip
vào thư mục servbay-ee-app
. Sau giải nén, bạn có thể xóa file nén.
unzip expressionengine.zip
rm expressionengine.zip
2
Sau khi giải nén, cấu trúc file của ExpressionEngine sẽ nằm trong thư mục servbay-ee-app
.
Bước 3: Tạo Cơ Sở Dữ Liệu và Người Dùng Cho ExpressionEngine
ExpressionEngine cần một cơ sở dữ liệu để lưu trữ nội dung và cấu hình. ServBay đã tích hợp MySQL và phpMyAdmin giúp bạn quản lý database dễ dàng.
Truy cập công cụ quản lý cơ sở dữ liệu phpMyAdmin của ServBay
Mở trình duyệt web, truy cập trang công cụ cục bộ của ServBay:
https://servbay.host/
. Trên trang này, nhấn vào liên kết “phpMyAdmin” để mở trang đăng nhập phpMyAdmin. Dùng tài khoản mặc định của ServBay (thường đã cấu hình sẵn, mặc định thường không cần mật khẩu khi truy cậplocalhost
).Tạo user và database
Sau khi đăng nhập phpMyAdmin, tiến hành tạo một user và database chuyên biệt cho ExpressionEngine.
- Đi tới trang tài khoản người dùng: Trên trang chính phpMyAdmin, nhấn vào “Tài khoản người dùng” trên thanh menu.
- Thêm tài khoản người dùng mới: Nhấn “Thêm tài khoản người dùng”.
- Điền thông tin người dùng và cơ sở dữ liệu:
- Tên người dùng: Nhập tên người dùng mà ExpressionEngine sẽ dùng kết nối, ví dụ
ee_user
. - Tên máy chủ: Chọn
localhost
(giới hạn kết nối nội bộ, tăng bảo mật). - Mật khẩu: Đặt mật khẩu an toàn để dùng với ExpressionEngine. Hãy nhớ mật khẩu này. Ví dụ có thể nhập
password123
để minh họa, nhưng nên dùng mật khẩu mạnh trong thực tế. - Nhập lại mật khẩu: Gõ lại để xác nhận.
- Tạo database cùng tên: Tích chọn “Tạo cơ sở dữ liệu có cùng tên và toàn quyền”. Việc này sẽ tự động tạo database tên
ee_user
và cấp quyền đầy đủ cho useree_user
.
- Tên người dùng: Nhập tên người dùng mà ExpressionEngine sẽ dùng kết nối, ví dụ
- Xác nhận quyền: Đảm bảo không tích chọn các quyền toàn cục không cần thiết (vì chúng ta đã cấp quyền qua tùy chọn trên).
- Thực thi: Nhấn “Thực hiện” để hoàn tất tạo user và database.
Đến đây, bạn đã có database tên
ee_user
và user cùng tênee_user
với toàn quyền trên database đó.
Bước 4: Cấu Hình Website Trong ServBay
Bây giờ, bạn cần báo cho ServBay cách định tuyến tên miền cục bộ (ví dụ servbay-ee.local
) đến thư mục dự án ExpressionEngine.
Mở ServBay và thêm website mới
Mở ứng dụng ServBay với giao diện đồ họa. Trong sidebar bên trái, chọn “Website”. Tiếp theo, nhấn nút “+” hoặc “Thêm mới” để thêm cấu hình website.
- Tên (Name): Đặt tên dễ nhận biết cho website, ví dụ
My ExpressionEngine Site
. - Tên miền (Domain): Nhập tên miền cục bộ bạn muốn dùng để truy cập, ví dụ
servbay-ee.local
. ServBay sẽ tự động sửa file hosts để trỏ tên này về 127.0.0.1. - Loại website (Type): Chọn
PHP
vì ExpressionEngine sử dụng PHP. - Phiên bản PHP (PHP Version): Chọn phiên bản PHP tương thích với ExpressionEngine bạn đã tải về. ServBay hỗ trợ nhiều phiên bản, bạn chọn phù hợp.
- Thư mục gốc website (Document Root): Nhấn nút duyệt thư mục, chọn đường dẫn đến thư mục bạn đã tạo ở bước 1, tức
/Applications/ServBay/www/servbay-ee-app
. - Web Server: Chọn bất kỳ máy chủ web nào ServBay hỗ trợ (Nginx, Caddy, hoặc Apache). ServBay sẽ tạo file cấu hình phù hợp. Thông thường, chọn mặc định là đủ.
- Tên (Name): Đặt tên dễ nhận biết cho website, ví dụ
Lưu và áp dụng cấu hình
Sau khi điền đầy đủ thông tin, nhấn “Lưu” hoặc “Áp dụng”. ServBay có thể yêu cầu khởi động lại server web để cập nhật cấu hình. Hãy thực hiện theo hướng dẫn, đợi ServBay khởi động lại xong.
Bây giờ khi truy cập
https://servbay-ee.local/
trên trình duyệt, ServBay sẽ chuyển tiếp đến thư mục dự án ExpressionEngine của bạn.
Bước 5: Chạy Trình Cài Đặt ExpressionEngine
ExpressionEngine có một trình cài đặt web giúp bạn hoàn tất cấu hình.
Truy cập trang cài đặt
Mở trình duyệt và truy cập tên miền cục bộ đã thiết lập ở trên, thêm file cài đặt
admin.php
ở cuối. Theo mặc định, trình cài đặt nằm ở/admin.php
.Địa chỉ:
https://servbay-ee.local/admin.php
Bạn sẽ thấy trang chào mừng hoặc trình hướng dẫn cài đặt của ExpressionEngine.
Làm theo hướng dẫn cấu hình
Trình hướng dẫn cài đặt ExpressionEngine sẽ yêu cầu bạn nhập các thông tin sau:
- Thông tin kết nối cơ sở dữ liệu:
- Máy chủ (Database Host):
localhost
- Tên CSDL (Database Name):
ee_user
(trùng tên đã tạo ở bước 3) - User:
ee_user
- Mật khẩu: dùng mật khẩu đã đặt cho
ee_user
ở bước 3
- Máy chủ (Database Host):
- Tài khoản quản trị: Tạo tài khoản admin cho phần quản trị ExpressionEngine, gồm tên đăng nhập, mật khẩu, email. Hãy dùng mật khẩu mạnh.
- Cấu hình website: Điền tên website, URL...
- Thông tin kết nối cơ sở dữ liệu:
Hoàn tất cài đặt
Kiểm tra kỹ các trường thông tin, sau đó nhấn “Cài đặt” hoặc nút hoàn tất tương ứng. ExpressionEngine sẽ tự động tạo bảng dữ liệu và hoàn tất các thiết lập.
Sau khi cài xong, bạn thường được chuyển đến trang đăng nhập hoặc dashboard của quản trị.
Bước 6: Thiết Lập Cơ Bản Sau Khi Cài Đặt
Sau khi cài nhân ExpressionEngine xong, bạn có thể tiến hành cài đặt thêm plugin, mẫu giao diện hoặc cấu hình khác tùy nhu cầu.
Đăng nhập quản trị ExpressionEngine
Đăng nhập quản trị bằng tài khoản admin vừa tạo qua
https://servbay-ee.local/admin.php
và nhập tên đăng nhập, mật khẩu.Cài đặt plugin
Trong giao diện quản trị, vào menu “Developer” -> “Add-Ons” -> “Plugins”. Bạn có thể duyệt và cài plugin theo nhu cầu dự án.
Cài đặt và cấu hình template
Vào “Design” -> “Templates”. Bạn có thể tạo nhóm template, mẫu template mới và phát triển code HTML/CSS/EE để hiện thị nội dung website.
Xây Dựng Website Của Bạn Với ExpressionEngine
Giờ đây, bạn đã cài đặt và cấu hình thành công ExpressionEngine trên ServBay. Hãy bắt đầu xây dựng và quản lý nội dung website của mình! Dưới đây là các thao tác cơ bản bạn nên làm quen:
Tạo Channel và Entry
Trung tâm của ExpressionEngine là “Channel” (kênh nội dung) và “Entry” (bài đăng). Channel định nghĩa loại/sơ đồ nội dung, còn Entry là các bản ghi cụ thể.
- Tạo Channel: Trong giao diện quản trị, vào “Content Structure” -> “Channels”. Nhấn “Create New Channel”, nhập tên kênh, các nhóm trường (Fields Group), rồi “Save Channel”.
- Tạo Entry: Vào “Content” -> “Publish”. Chọn channel vừa tạo, nhập tiêu đề, nội dung (theo trường đã định nghĩa), rồi nhấn “Save”.
Cấu Hình Menu Điều Hướng
Menu thường được xây dựng thông qua các template.
- Tạo hoặc chỉnh sửa template: Vào “Design” -> “Templates”, tạo/định vị template phục vụ cho điều hướng (ví dụ, trong nhóm template
site
, tạo templatenav
). - Viết mã điều hướng: Sử dụng tag template của ExpressionEngine để truy vấn entry, tạo cấu trúc menu HTML.
- Nhúng menu vào layout: Trong main layout, dùng
{% include 'site:nav' %}
(nếu dùng Blade) hoặc các tag tương ứng để nhúng menu.
Tùy Biến Widget/Sidebar
Tương tự, sidebar hoặc widget cũng thường được xây dựng thành các template riêng.
- Tạo template widget: Trong “Design” -> “Templates”, tạo template như
site:sidebar
. - Chèn code widget: Thiết kế code để hiển thị các entry mới, danh mục, quảng cáo...
- Nhúng vào layout: Đưa template widget vào vị trí mong muốn của layout.
Câu Hỏi Thường Gặp (FAQ)
- Hỏi: Truy cập
https://servbay-ee.local/
báo lỗi quyền truy cập?- Đáp: Kiểm tra quyền thư mục dự án ExpressionEngine (
/Applications/ServBay/www/servbay-ee-app
) cùng thư mục con, file bên trong. Đảm bảo user chạy ServBay (thường là chính bạn) có quyền đọc ghi. Có thể dùngchmod
hoặcchown
, ví dụ:sudo chown -R username:group /Applications/ServBay/www/servbay-ee-app
.
- Đáp: Kiểm tra quyền thư mục dự án ExpressionEngine (
- Hỏi: Trình cài đặt báo không kết nối được database?
- Đáp: Kiểm tra kỹ thông tin kết nối database đã nhập (host
localhost
, tên db, user, mật khẩu) có đúng với đã tạo trên phpMyAdmin không. Đồng thời bảo đảm dịch vụ MySQL/MariaDB trên ServBay đang chạy.
- Đáp: Kiểm tra kỹ thông tin kết nối database đã nhập (host
- Hỏi: Tôi muốn dùng database khác như PostgreSQL trên ServBay thì sao?
- Đáp: ExpressionEngine chủ yếu hỗ trợ MySQL/MariaDB. Nếu phiên bản bạn dùng/chính thức có hỗ trợ PostgreSQL và bạn cấu hình driver đầy đủ, về mặt lý thuyết ServBay có thể phục vụ, tuy nhiên cần kiểm thử tương thích. Tham khảo tài liệu ExpressionEngine để biết rõ loại database được hỗ trợ.
Tổng Kết
Làm theo các bước trong bài hướng dẫn này, bạn đã có thể cài đặt và cấu hình ExpressionEngine CMS thành công trên môi trường phát triển local bằng ServBay. ServBay mang lại môi trường thuận tiện, hiệu quả và tích hợp đủ các thành phần cần thiết cho phát triển ExpressionEngine. Giờ bạn hãy tận dụng sức mạnh của ExpressionEngine để xây dựng website hoặc ứng dụng web của riêng mình. Chúc bạn phát triển thành công!