XAMPP là một phần mềm có thể chạy đa nền tảng khác nhau, đồng thời là miễn phí, dễ cài đặt. Dưới đây là một số lý do bạn nên dùng XAMPP để chạy web server:
- Tích hợp sẵn nhiều thành phần: XAMPP bao gồm Apache (web server), MySQL (cơ sở dữ liệu), PHP và Perl, giúp bạn dễ dàng xây dựng ứng dụng web mà không cần cài đặt từng phần mềm riêng lẻ.
- Dễ sử dụng: Giao diện đơn giản, dễ quản lý các dịch vụ như Apache, MySQL chỉ qua vài cú nhấp chuột.
- Hỗ trợ phát triển cục bộ: XAMPP tạo môi trường máy chủ ảo ngay trên máy tính, giúp bạn thử nghiệm, phát triển website mà không cần upload lên server thật.
- Đa nền tảng: XAMPP hỗ trợ nhiều hệ điều hành như Windows, macOS, Linux.
- Miễn phí và mã nguồn mở: Bạn có thể tự do sử dụng và tùy chỉnh theo nhu cầu.
XAMPP đặc biệt hữu ích khi phát triển web, thử nghiệm tính năng, hoặc học lập trình. Trong bài viết này, chúng ta sẽ cùng nhau cài đặt XAMPP trên MacOS và cấu hình một vài tính năng nâng cao khác.
1. Cài đặt XAMPP trên MacOS
Để cài đặt Xampp trên MacOS, trước hết bạn cần tải về bộ cài đặt ở link sau: Link cài đặt: https://www.apachefriends.org/download.html

Lựa chọn phiên bản để tải về, tại thời điểm mình viết hướng dẫn này thì bản cài đặt XAMPP trên MacOS có phiên bản mới nhất là 8.2.4.
Ngay lần đầu tải về bộ cài đặt, khi click vào file cài, thông thường MacOS sẽ thông báo không cho phép vì bộ cài đặt chưa được xác thực (Verify).
Để cài đặt được XAMPP trên MacOS, bạn phải làm thêm một bước xác minh, truy cập vào System Setting / Privacy and Security, tại mục Security chọn Open Anyway để mở bộ cài đặt (tham khảo hình ảnh dưới đây)

Sau đó, bộ cài đặt sẽ hiện lên, bạn tiến hành cài đặt như thông thường. Sau khi cài đặt xong sẽ có thông báo hoàn thành

Kiểm tra dịch vụ đang chạy

Mặc định khi cài đặt xong, bạn đã có môi trường máy chủ web server, mở trình duyệt và truy cập bằng cách gõ http://localhost trên trình duyệt sẽ hiện thị trang chủ thông tin XAMPP

Truy cập công cụ quản lý cơ sở dữ liệu PhpMyAdmin tại menu trang chủ

Mặc định, PhpMyAdmin sẽ vào thẳng trang quản trị mà ko yêu cầu đăng nhập, để yêu cầu đăng nhập khi vào PhpMyAdmin, bạn cần cấu hình thêm.
Đến bước này, bạn đã hoàn thành việc cài đặt XAMPP trên MacOS, tiếp theo bạn có thể cấu hình hoặc tạo các website để chạy trên môi trường web server này.
2. Cách sử dụng PHP Command khi cài đặt Xampp
Đây là một cấu hình nâng cao trong XAMPP. Với những nhà phát triển web chuyên nghiệp, hay khi phát triển ứng dụng trên những mã nguồn cần độ tuỳ chỉnh cao như Laravel,… đôi khi bạn cần phải thực hiện các lệnh PHP Command.
Nếu bạn cài đặt riêng lẻ PHP trên MacOS thì việc sử dụng PHP Command là có sẵn và không cần phải làm gì thêm. Tuy nhiên, khi cài đặt XAMPP là bộ cung cụ nhiều thành phần thì bạn cần phải cấu hình thêm các bước như sau để sử dụng PHP Command trên MacOS
Bước 1: Kiểm tra đường dẫn tệp file cấu hình PHP có trong XAMPP
Tệp file PHP trong XAMPP sau khi cài đặt thường để trong đường dẫn:
/Applications/XAMPP/xamppfiles/bin/php.
Bước 2: Cập nhật biến môi trường PATH
Mở Terminal. Chạy lệnh dưới để sửa file cấu hình SHELL (sử dụng .zshrc for Zsh hoặc .bash_profile cho Bash)
nano ~/.zshrc # For Zsh
# or
nano ~/.bash_profile # For Bash
Thêm dòng sau đây
export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
Lưu lại và thoát trình chỉnh sửa
Bước 3: Áp dụng thay đổi
Chạy lệnh sau để cập nhật thay đổi vào file
source ~/.zshrc # For Zsh
# or
source ~/.bash_profile # For Bash
Bước 4: Hoàn tất và kiểm tra
Chạy lệnh php -v trong terminal để kiểm tra xem PHP Command đã hoạt động chưa.

Nếu trả về thông tin phiên bản PHP thì bạn đã cấu hình thành công.
3. Cấu hình tên miền ảo (Virtual Host) trong Xampp trên MacOS
Trước hết, bạn cần phải hiểu Virtual Host là gì? Khi nào thì cần cấu hình Virtual Host trên XAMPP. Vì đây cũng là một trong những tính năng nâng cao, rất hữu ích, nhưng không phải lúc nào bạn cũng cần phải cấu hình.
3.1. Virtual Host là gì
Virtual Host là một kỹ thuật giúp quản lý nhiều trang web trên cùng một máy chủ web. Kỹ thuật này cho phép bạn vận hành nhiều trang web khác nhau trên cùng một máy chủ vật lý, mỗi trang có tên miền riêng nhưng sử dụng chung một địa chỉ IP.
Khi máy chủ nhận yêu cầu truy cập, nó sẽ kiểm tra địa chỉ IP và tên miền để xác định trang web cụ thể mà yêu cầu hướng đến. Điều này cho phép phân phối lưu lượng và cho phép vận hành nhiều trang web độc lập trên cùng một máy chủ.
Bạn có thể cấu hình Virtual Host bằng cách tạo tập tin cấu hình riêng cho từng trang web, trong đó chỉ định tên miền, thư mục gốc, cài đặt bảo mật và các thông số khác.
Virtual Host đóng vai trò quan trọng trong việc triển khai và quản lý các ứng dụng web phức tạp, đặc biệt khi cần vận hành nhiều trang web hoặc dịch vụ trên cùng một máy chủ vật lý.
3.2. Khi nào nên sử dụng Virtual Host
Thông thường, để chạy web sau khi đã cài đặt XAMPP, bạn cần phải copy source code website đó vào thư mục htdocs trong XAMPP, hoặc nếu bạn đã cấu hình folder code ở một phân vùng khác thư mục htdocs thì bạn cần phải copy source code vào đấy.
Khi sử dụng Virtual Host, Bạn có thể truy cập vào bất kỳ thư mục code nào mà không cần phải copy source code vào htdocs hoặc thư mục chứa source code trong XAMPP.
Việc sử dụng Virtual Host cũng giúp bạn quản lý địa chỉ web được chuyên nghiệp hơn: như dễ nhớ hơn, thuận tiện khi demo với khách hàng,… đặc biệt khi bạn có nhiều website cần quản lý, Virtual Host cũng sẽ giúp ích hơn rất nhiều trong việc quản lý.
3.3. Cách cấu hình Virtual Host trong XAMPP trên MacOS
Dưới đây là các bước cấu hình Virtual Host cho một website bất kỳ chạy trên phần mềm XAMPP cài đặt trên MacOS
Bước 1: Sửa file httpd-vhosts.conf
Mở Terminal và điều hướng tới thư mục cấu hình Apache
sudo nano /Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf
Thêm cấu hình sau vào file để tạo ra virtual host cho website
<VirtualHost *:80>
ServerAdmin webmaster@yourdomain.local
DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/yourproject"
ServerName yourdomain.local
ErrorLog "logs/yourdomain.local-error_log"
CustomLog "logs/yourdomain.local-access_log" common
<Directory "/Applications/XAMPP/xamppfiles/htdocs/yourproject">
Options All
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Chú ý:
- Thay yourdomain.local bằng tên domain bạn muốn đặt chon website
- Sửa lại đường dẫn DocumentRoot là đường dẫn tới thư mục source code của website
- Nếu bạn dùng port khác port 80 (ví dụ 81, 82,...) thì bạn cần khai báo ở dòng Listen trong file cấu hình Apache
- Tab <Directory></Directory> là một số tuỳ chọn thêm cho riêng mỗi cấu hình Virtual Host
- Nếu source code của bạn là Laravel thì thêm /public vào sau /yourproject ở dòng cấu hình DocumentRoot và tab <Directory>
Bước 2: Sửa file the httpd.conf
Kích hoạt tính năng Virtual Host bằng cách truy cập vào file cấu hình
sudo nano /Applications/XAMPP/xamppfiles/etc/httpd.conf
Loại bỏ dấu # tại dòng dưới đây để kích hoạt
#Include etc/extra/httpd-vhosts.conf
Bước 3: Sửa file hosts
Truy cập vào file cấu hình:
sudo nano /etc/hosts
Thêm dòng sau để map tên domain website của bạn
127.0.0.1 yourdomain.local
Tên domain yourdomain.local phải trùng với tên domain bạn đã cấu hình ở bước trên
Bước 4: Khởi động lại Apache
Bạn có thể khởi động lại Apache qua giao diện phần mềm hoặc qua dòng lệnh trên Terminal
sudo /Applications/XAMPP/xamppfiles/xampp restartapache
Bước 5: Kiểm tra kết quả
Truy cập vào đường dẫn trên trình duyệt, nếu truy cập được website tức là bạn đã cấu hình thành công: http://yourdomain.local
3.4. Một số lỗi thường gặp
Không phải lúc nào việc cấu hình cũng thuận lợi, bạn có thể gặp một số lỗi phổ biến và cách khắc phục như sau:
Tránh lỗi Localhost khi cấu hình Virtual Host
Nếu bạn có nhiều virtual host cùng sử dụng port 80, có thể gặp phải lỗi này. Cách khắc phục là thêm vào một vhost cho localhost trong tệp tin:
sudo nano /Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf
Thêm vào cấu hình sau:
<VirtualHost *:80>
ServerName localhost
DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs"
</VirtualHost>
Sau đó, khởi động lại Apache để hoàn thành.
Tránh lỗi không có quyền truy cập
Thông thường lỗi thông báo như sau: access forbidden! you don't have permission to access the requested directory. there is either no index document or the directory is read-protected.
Để khắc phục lỗi này, bạn thực hiện như sau:
- Dùng lệnh CHMOD để cấp quyền cho thư mục source code
- Cập nhật lại user/group có quyền chạy dịch vụ apache trong file cấu hình httpd.conf
Để cập nhật lại user/group trong file cấu hình httpd.conf, trước tiên bạn gõ lệnh #id trong cửa sổ Terminal để tìm user và group.
id
Bạn sẽ nhận được một loạt các nhóm người dùng, bạn cần sử dụng riêng user uid và group gid:
uid=502(admin) gid=20(staff)
Tiếp theo, thực hiện thay đổi trong file cấu hình httpd.conf
sudo nano /Applications/XAMPP/xamppfiles/etc/httpd.conf
Tìm dòng User và Group trong tab <IfModule unixd_module></IfModule>. Sửa lại tên User và Group tương ứng với tên user và group tìm được phía trên. Sau đó khởi động lại Apache để hoàn thành.
<IfModule unixd_module>
....
User admin
Group staff
....
</IfModule>
Một điều lưu ý là Virtual Host là một tính năng của Apache chứ không phải của XAMPP nên phần mềm nào dùng Apache thì đều có thể cấu hình Virtual Host theo cách tương tự. Ngoài XAMPP, các bạn cũng có thể dùng một số phần mềm khác như WAMP, APPSerrver,… các phần mềm này cũng đều dùng Apache, MySQL và PHP.
Như vậy, bài viết này đã hướng dẫn các bạn cách cài đặt XAMPP trên MacOS, cách dùng được lệnh PHP Command, cấu hình được Virtual Host trên XAMPP một cách đầy đủ nhất. Bạn có thể cấu hình để chạy được website với tên miền tuỳ chỉnh trên MacOS sử dụng XAMPP và có thể áp dụng để tạo cấu hình cho nhiều website khác nhau.