Phần hai của loạt bài gồm hai phần được cập nhật để thiết lập môi trường phát triển Apache/PHP trên macOS Catalina
nguồn hình ảnh. Casey McMullen
Phần này dành cho các nhà phát triển web muốn cài đặt Apache và PHP như một phần của thiết lập môi trường phát triển trên máy Mac của họ
Đảm bảo xem Phần một, Cách cài đặt Apache trên macOS 10. 15 Catalina Sử dụng Homebrew, điều kiện tiên quyết cho phần này
Trước đây, tôi thường dựa vào phiên bản Apache và PHP được cài đặt sẵn HĐH trên MacBook Pro của mình. Sau đó, tôi sẽ cài đặt các tiện ích mở rộng PHP mà tôi cần [Xdebug, Redis, v.v. ] từ Homebrew
Kể từ ngày 1 tháng 4 năm 2018, Homebrew đã ngừng sử dụng vòi Homebrew/php để ủng hộ cách tiếp cận Homebrew/core mới. Ngoài ra, mặc dù một số tiện ích mở rộng quan trọng vẫn được hỗ trợ [e. g. , MySQLi], hầu hết các phần mở rộng PHP không còn được phân phối thông qua Homebrew nữa [
brew install php@7.2
1, brew install php@7.2
2, v.v. ] và yêu cầu cài đặt thông qua PECL [Thư viện cộng đồng mở rộng PHP]Với các quy tắc bảo mật luôn thay đổi trong macOS, cùng với sự phức tạp của việc sử dụng phiên bản PHP được cài đặt sẵn macOS cùng với PECL, tôi đã quyết định thay đổi toàn bộ cách tiếp cận của mình và thay vào đó sử dụng một thiết lập hoàn toàn từ Homebrew. Cách tiếp cận mới này cho phép cài đặt đơn giản hơn, linh hoạt hơn cho việc tạo phiên bản và sẽ tiếp tục hoạt động trên tất cả các phiên bản macOS
Các hướng dẫn này hoạt động với các phiên bản trước của macOS. Ngoài ra, bạn không cần phải bắt đầu cài đặt hệ điều hành mới để sử dụng phần này, nhưng những hướng dẫn này bắt đầu ngay từ đầu với giả định rằng bạn chưa cài đặt gì vì đó chỉ là cách dễ nhất để thực hiện
Bắt đầu nào
bước
Cài đặt Homebrew
Nếu bạn chưa làm điều này, thì bạn sẽ cần phải
Ghi chú. Lệnh sau đây là một dòng đơn được bao bọc do các ràng buộc về độ rộng của trang trong Phương tiện. Đảm bảo sao chép toàn bộ dòng
ruby -e "$[curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install]"
Tạo thư mục tệp nhật ký PHP
PHP được cấu hình sẵn với các thư mục nhật ký riêng của nó, nhưng chúng tôi sẽ tạo thư mục
brew install php@7.2
3 của riêng mình để chúng dễ dàng tìm thấy khi chúng tôi cần. Thực hiện theo các bước sau để tạo các thư mục thích hợp và đặt quyền của chúng. Bỏ qua mọi tin nhắn đã tồn tại mà bạn có thể nhận đượcsudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/
Cài đặt và cấu hình PHP
Cho đến cuối tháng 3 năm 2018, tất cả các brew liên quan đến PHP đã được xử lý bởi Homebrew/php tap, nhưng điều đó đã không còn được dùng nữa. Vì vậy, bây giờ chúng tôi sử dụng những gì có sẵn trong gói Homebrew/core. Điều này nên được duy trì tốt hơn nhưng là một bộ gói ít hoàn chỉnh hơn nhiều
brew install php@7.2
Cần lưu ý rằng để cài đặt các phiên bản PHP khác, bạn chỉ cần thay đổi số phiên bản [e. g. , php@7. 1 ]. Bạn cũng có khả năng cài đặt nhiều phiên bản PHP cùng lúc và chuyển đổi giữa chúng. Tuy nhiên, tài liệu này được thiết kế đặc biệt để cài đặt và cấu hình PHP 7. 2
Tệp
brew install php@7.2
4 mới của bạn nằm trong thư mục sau/usr/local/etc/php/7.2/php.ini
Kích hoạt mô-đun Apache cần thiết
Bây giờ chúng ta cần định cấu hình Apache để sử dụng mô-đun PHP mới được cài đặt. Để làm điều này, chúng ta cần chỉnh sửa tệp
brew install php@7.2
5 mà chúng ta đã cài đặt trong Phần Một của loạt bài nàyopen -e /usr/local/etc/httpd/httpd.conf
Cuộn xuống cuối mục nhập
brew install php@7.2
6 và thêm dòng sau vào sau dòng mô-đun brew install php@7.2
7Ghi chú. Lệnh sau đây là một dòng đơn được bao bọc do các ràng buộc về độ rộng của trang trong Phương tiện. Đảm bảo sao chép toàn bộ dòng
brew install php@7.2
2Đặt chỉ mục thư mục và trình xử lý tệp
Bạn cũng cần đặt chỉ mục thư mục cho PHP một cách rõ ràng, vì vậy hãy tìm kiếm khối văn bản sau
brew install php@7.2
3… rồi chọn và thay thế bằng các dòng sau
brew install php@7.2
4Lưu và thoát trình soạn thảo văn bản
Để bắt đầu dịch vụ PHP và đảm bảo rằng nó bắt đầu khi khởi động lại, hãy nhập lệnh sau vào Terminal
brew install php@7.2
5Xác thực cài đặt PHP
Để kiểm tra xem PHP có được cài đặt và chạy như mong đợi hay không, hãy tạo một tệp có tên
brew install php@7.2
8 trong thư mục Trang web mà bạn đã tạo trong Phần Một của loạt bài nàybrew install php@7.2
7Khởi động lại Apache
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/0
Bây giờ, hãy làm mới hoàn toàn trình duyệt của bạn [hoặc đóng và thoát khỏi trình duyệt của bạn rồi khởi động lại trình duyệt]. Sau đó duyệt đến máy chủ cục bộ của bạn và bạn sẽ thấy trang thông tin PHP tương tự như trang bên dưới
Nếu bạn thấy một trang thông tin PHP tương tự, xin chúc mừng. Bây giờ bạn đã chạy thành công Apache và PHP
Nếu bạn gặp sự cố và có vẻ như PHP không tải đúng cách, có thể phiên trình duyệt của bạn đang ngăn không cho nó làm mới. Hãy thử tắt và thoát hoàn toàn trình duyệt của bạn. Chạy lại cài đặt lại Apache và mở trình duyệt của bạn và thử điều hướng đến máy chủ cục bộ của bạn. Nó sẽ hoạt động
Cài đặt tiện ích mở rộng PECL
Kể từ tháng 3 năm 2018, Homebrew không còn phân phối hầu hết các tiện ích mở rộng PHP và chúng phải được cài đặt bằng PECL. Điều này bao gồm các tiện ích mở rộng Xdebug, igbinary và Redis
Tin tốt là PECL được bao gồm trong bản cài đặt PHP của bạn và tất cả những gì bạn cần làm là thêm vị trí bin của nó vào hệ thống PATH của bạn để làm cho nó bắt đầu hoạt động từ dòng lệnh của bạn
Ghi chú. Trước khi chạy lệnh bên dưới, bạn nên cd vào thư mục
brew install php@7.2
9 của mình và xác minh số phiên bản được liệt kê trong lệnh [e. g. , 7. 2. 23]; sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/1
Điều này sẽ thêm thư mục PHP của bạn vào đường dẫn hệ thống của bạn và khởi động lại bash. Bạn sẽ được tốt để đi
Mở Terminal và nhập lệnh bên dưới. Bạn sẽ thấy một danh sách các tùy chọn thay vì lệnh không tìm thấy. Nếu bạn thấy một danh sách các tùy chọn, bạn đã sẵn sàng
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/2
Thao tác này sẽ thêm một dòng vào đầu tệp
brew install php@7.2
4 của bạn mà chúng tôi sẽ sửa sau khi chúng tôi cài đặt các tiện ích mở rộng còn lạiCài đặt Xdebug
Điều này sẽ cài đặt Xdebug v2. 7. 2, đây là bản phát hành ổn định hiện tại [tại thời điểm viết bài này] hỗ trợ PHP 7. 2
Có các phiên bản khác của Xdebug. Chỉ cần thay thế số phiên bản bạn muốn
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/3
Cài đặt igbinary
Điều này sẽ cài đặt igbinary v3. 0. 1, đây là bản phát hành ổn định hiện tại [tại thời điểm viết bài này] và hỗ trợ PHP 7. 2
Có các phiên bản khác của igbinary. Chỉ cần thay thế số phiên bản bạn muốn
Ghi chú. Bạn phải cài đặt tiện ích mở rộng igbinary trước khi cài đặt Redis
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/4
Thao tác này sẽ thêm một dòng vào đầu tệp
brew install php@7.2
4 của bạn mà chúng tôi sẽ sửa sau khi chúng tôi cài đặt Redis và tiện ích mở rộng của nóCài đặt Redis
Đầu tiên, cài đặt thành phần máy chủ Redis cho môi trường nhà phát triển của chúng tôi
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/5
Khi đã hoàn tất, hãy khởi động Redis và đặt nó khởi động lại khi khởi động lại
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/6
Cài đặt tiện ích mở rộng Redis PHP
Điều này sẽ cài đặt Redis v5. 0. 2, đây là bản phát hành ổn định hiện tại [tại thời điểm viết bài này] và hỗ trợ PHP 7. 2
Có các phiên bản khác của Redis. Chỉ cần thay thế số phiên bản bạn muốn
Ghi chú. Bạn phải cài đặt tiện ích mở rộng igbinary trước khi cài đặt Redis
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/7
Bạn sẽ được hỏi một số câu hỏi trong quá trình cài đặt. Trả lời họ như sau
- bật hỗ trợ serializer igbinary? . Vâng
- bật hỗ trợ nén lzf? . không
Chỉnh sửa cài đặt cấu hình PHP
Bây giờ chúng tôi đã cài đặt tất cả các tiện ích mở rộng cần thiết, chúng tôi có thể tạo một số mục nhập cuối cùng cho tệp
brew install php@7.2
4 cho môi trường phát triển của chúng tôisudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/8
Tìm và xóa ba dòng này đã được thêm vào đầu tệp
brew install php@7.2
4 trong các bước trước. Chúng tôi sẽ thêm lại chúng sau một chút nữasudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/9
Cuộn xuống cuối tệp
brew install php@7.2
4 và dán các dòng sau vàoLưu và thoát trình soạn thảo văn bản
Khởi động lại Apache
sudo mkdir /usr/local/logsudo mkdir /usr/local/log/phpsudo chgrp -R staff /usr/local/log/phpsudo chmod -R ug+w /usr/local/log/php/0
Mở trình duyệt của bạn và điều hướng đến http của bạn. //máy chủ cục bộ. Bạn sẽ thấy trang thông tin PHP của mình. Cuộn xuống và bạn sẽ thấy tất cả thông tin tiện ích mở rộng PHP cần thiết được hiển thị cho igbinary, Redis và Xdebug với số phiên bản phù hợp mà bạn đã cài đặt trong các bước trước
Xin chúc mừng. Bây giờ bạn có Apache và PHP với các tiện ích mở rộng được liên kết đang chạy trên môi trường phát triển máy Mac của bạn