Có rất nhiều cách, nhiều hướng, nhiều stack cài đặt để lựa chọn. Nếu bạn muốn nhanh gọn thì có thể dùng MAMP Pro, muốn đồng bộ cùng người khác trong team thì hãy xem qua Docker, Vagrant… Nhưng trong series này, mình sẽ đi theo hướng cài đặt trực tiếp trên macOS thông qua Home brew, Bài viết có tham khảo một số trang trên internet.

Homebrew

Series này sẽ chủ yếu cài đặt dựa trên homebrew, một package manager nổi tiếng dành riêng cho macOS. Trước hết, homebrew cần command line tools để có thể chạy được. Mở Terminal và chạy lệnh cài đặt.

$ xcode-select --install

Sau đó thì cài đặt homebrew

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Kiểm tra brew sau khi cài đặt.

$ brew --version
Homebrew 2.1.2
Homebrew/homebrew-core (git revision ad96; last commit 2019-05-14)

Nginx

macOS mặc định cài sẵn Apache, để chắc chắn ta nên dừng và không cho tự động load khi macOS khởi động. Có thể terminal sẽ báo path không tồn tại, không đáng lo, bạn có thể bỏ qua.

$ sudo apachectl stop
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null

Cài đặt nginx thông qua homebrew

$ brew install nginx

Sau đó khởi động nginx với quyền sudo

$ sudo brew services start nginx

Mở trình duyệt web vào địa chỉ http://localhost:8080. Nếu bạn thấy như hình sau là đã cài đặt và chạy nginx thành công.

alt text

PHP

Homebrew mặc định chỉ hỗ trợ những bản php còn hạn support, chạy lệnh sau để có thể cài những bản đã deprecated như 5.6 hay 7.0

$ brew tap exolnet/homebrew-deprecated

Cài đặt php từng version theo nhu cầu, nếu không cần thiết thì chỉ cài bản stable mới nhất.

$ brew install php@5.6
$ brew install php@7.0
$ brew install php@7.1
$ brew install php@7.2
$ brew install php@7.3

Khởi động service

$ brew services start php@7.3
$ brew services start php@7.2
$ brew services start php@7.1
$ brew services start php@7.0
$ brew services start php@5.6

Kiểm tra version php

$ php -v
PHP 7.1.23 (cli) (built: Feb 22 2019 22:19:32) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

Hiện tại php cli vẫn nhận bản php mặc định có sẵn của macOS. Để có thể sử dụng đúng bản php cần, chạy câu lệnh link bản cần dùng

$ brew link --force php@7.3

Tắt và mở lại terminal, kiểm tra version php lần nữa

$ php -v
PHP 7.3.5 (cli) (built: May 2 2019 12:40:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.5, Copyright (c) 1999-2018, by Zend Technologies

Giả sử muốn switch sang php 7.2 thì unlink bản đang dùng và link bản mới

$ brew unlink php@7.3 && brew link --force php@7.2

Kiểm tra lại lần nữa, php đã là bản mới

$ php -v
PHP 7.2.18 (cli) (built: May 2 2019 13:03:01) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.18, Copyright (c) 1999-2018, by Zend Technologies

Mysql

Cài đặt mysql qua homebrew

$ brew install mysql

Sau khi cài đặt xong thì khởi động service

$ brew services start mysql

Chạy mysql lần đầu, không cần password

$ mysql -u root

Trong mysql console, set password, đổi chuỗi ‘secret’ thành password bạn muốn.

> USE mysql;
> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'secret';
> FLUSH PRIVILEGES;
> quit;

Thử đăng nhập vào mysql bằng password vừa tạo

$ mysql -u root -p

Nếu không xui xẻo hay… quên password thì bạn có thể vào mysql console bình thường.