Cài đặt Web Server trên MacOS 12

Bật Web Server trên MacOS 12 “Monterey”

MacOS 12 không còn Web Server mặc định nên nếu các bạn đang cần chạy một Web Server trên MacOS 12 “Monterey” thì đây là bài viết dành cho các bạn.

Những phiên bản khác sẽ có thay đổi một chút nên bài viết này chỉ dành cho ai đang cần chạy một web server (ở đây là apache) trên MacOS 12 “Monterey”. Nếu bạn nào cần chạy trên phiên bản khác thì để lại comment bên dưới bài viết nha.

Kiểm tra phiên bản MacOS

Các bạn kiểm tra phiên bản MacOS trên máy của mình bằng cách sau:

Bước 1: Click vào hình quả táo phía góc trên bên trái của màn hình.

Bước 2: Chọn About This Mac

Kiểm tra phiên bản MacOS bước 1 - 2

Bước 3: Tab Overview của cửa sổ hiện ra có thông tin phiên bản mà các bạn đang cần.

Bật Web Server Apache

Trước tiên, bạn có thể config lại Apache trong file:

/etc/apache2/httpd.conf

Bây giờ các bạn check config bằng cách gõ lệnh sau vào Terminal:

# Nếu các bạn thấy trả về "Syntax OK" thì mọi thứ đã sẵn sàng
apachectl configtest

# Bật Apache
launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
# Tắt Apache
launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Lưu ý: Khi các bạn chạy lệnh apachectl configtest, có thể các bạn sẽ gặp một cảnh báo như sau:

httpd: Could not reliably determine the server's fully qualified domain name

Các bạn có thể fix cảnh báo này bằng cách vào /etc/apache2/httpd.conf để thay đổi Server Name tương ứng trong /etc/hosts. Tuy nhiên, các bạn cũng có thể bỏ qua nếu các bạn chỉ cần một Web Server chạy local để test project của mình.

Các bạn thực hiện như trên khi các bạn muốn chạy bản Apache mà Apple tích hợp trong MacOS 12.

Nếu các bạn muốn sử dụng phiên bản Apache được cài thông qua brew thì hãy tắt service Apache của MacOS 12 trước nhé.

Các config của phiên bản Apache này được đặt trong file config nằm trong đường dẫn:

/opt/homebrew/etc/httpd/httpd.conf

Và dưới đây là các lệnh mà các bạn có thể dùng để điều khiển Apache thông qua brew:

# Check tất cả các services đang chạy bởi brew
# Apache là httpd
brew services

# Bật Apache ngay lập tức và chạy lại sau khi restart lại máy.
brew services start httpd
# Tắt Apache ngay lập tức và không chạy lại sau khi restart lại máy.
brew services stop httpd
# Cơ bản là chạy stop và sau đó là start ngay lập tức
brew services restart httpd

Cuối cùng, các bạn đã có thể mở trình duyệt lên và gõ vào thanh địa chỉ localhost để kiểm tra thành quả.

Với bản Apache được cài đặt qua Homebrew thì port mặc định của nó là 8080. Bạn truy cập vào bằng đường dẫn localhost:8080 hoặc sửa lại port.

Listen 8080 -> Listen 80

Nếu các bạn nhận được màn hình trả về với nội dung là It works! thì mọi thứ đã hoạt động OK rồi đấy.

DocumentRoot mà các bạn cần để khởi tạo project là:

#Đối với bản Apache cài sẵn của MacOS 12
DocumentRoot "/Library/WebServer/Documents"

#Đối với bản Apache cài qua Homebrew
DocumentRoot "/opt/homebrew/var/www"

Chúc các bạn thành công!

Một vài lưu ý

Kể từ Monterey PHP đã bị gỡ hoàn toàn khỏi MacOS, vậy nên nếu các bạn muốn chạy php thì cài PHP về nhé. Và để PHP chạy được với Apache trên MacOS 12, mình sẽ làm một bài hướng dẫn khác nhé.

Tip: Nếu các bạn đang dùng Visual Studio Code thì nên cài code command để mở file từ Terminal cho dễ thao tác nhé. Lúc đó, hãy thay lệnh vi thành code.

Cám ơn các bạn đã theo dõi bài viết này!

Trả lời