Trong macOS phiên bản mới (như 10.11, 10.12, 10.13 ...) có cài sẵn mặc định Webserver Apache HTTP và PHP, tuy nhiên để dễ tuỳ biến trong phần này sẽ huỷ sử dụng cài đặt mặc định đó để sử dụng phiên bản Do sử dụng Các file cấu hình cho Apache, PHP, MySQL sử dụng Đầu tiên cần đảm báo có Command Line Tools xcode-select --install Có một số thư viện có thể cần bổ sung, chạy lệnh sau để cài đặt: # brew install openldap libiconv
Trước tiên cần huỷ đi việc sử dụng Apache cài đặt mặc định nếu đang kích hoạt: # sudo apachectl stop # sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null Tiến hành cài đặt Apache bằng lệnh: # brew install httpd
Cấu hình để Apache tự động chạy khi khởi động hệ thống: # sudo brew services start httpd
Mặc định Webserver Apache HTTP cài theo cách trên nó làm việc trên cổng Khi làm việc với Apache một số lệnh có thể dùng tới như: #Khởi động Apache # sudo apachectl start #Khởi động lại Apache # sudo apachectl restart #Dừng Apache # sudo apachectl stop Thông tin cấu hình chỉnh của Apache lưu trong file #Khởi động Apache # code /usr/local/etc/httpd/httpd.conf Thay đổi một số cấu hình ApacheĐổi cổng HTTPD Thay đổi cổng Listen 8080 Thay bằng: Listen 80 Đổi ServerName tìm đến: #ServerName www.example.com:8080 Thay bằng: ServerName localhost Thay đổi user chạy , ví dụ muốn đổi vai trò chạy là của user User _www Group _www Thay bằng: User admin Group _www Bật mod_rewrite, để hỗ trợ viết lại URL và #LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so Thay bằng: LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so Tạo thử một VirtualHost: ví dụ webiste lưu tại <VirtualHost *:80> DocumentRoot "/Users/admin/Documents/testweb/" ServerName testweb.com <Directory "/Users/admin/Documents/testweb"> AllowOverride all Options Indexes FollowSymLinks MultiViews Require all granted </Directory> </VirtualHost> Tiếp theo thay đổi # code /etc/hosts
Thêm vào: 127.0.0.1 testweb.com Khởi động lại Apache sudo apachectl restart, tạo ra một file Cài đặt PHPTa cài PHP thông qua # brew tap exolnet/homebrew-deprecated
Để cài đặt phiên bản PHP nào thì gõ lệnh cài đặt #CÀI PHP5.6 # brew install #CÀI PHP7.2 # brew install File cấu hình cho từng phiên bản PHP nằm trong các thư mục con trong /usr/local/etc/php/5.6/php.ini /usr/local/etc/php/7.2/php.ini Cấu hình Apache để làm việc với PHP, ví dụ cấu hình để Apache gọi đến phiên bản PHP7.2 đã cài đặt. Mở file #LoadModule php5_module /usr/local/opt//lib/httpd/modules/libphp5.so
#LoadModule php7_module /usr/local/opt//lib/httpd/modules/libphp7.so
#LoadModule php7_module /usr/local/opt//lib/httpd/modules/libphp7.so
LoadModule php7_module /usr/local/opt//lib/httpd/modules/libphp7.so
#LoadModule php7_module /usr/local/opt//lib/httpd/modules/libphp7.so
Cũng cần đảm bảo trong <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> <FilesMatch \.php$> Sethandler application/x-httpd-php </FilesMatch> Khởi động lại Apache, sau đó tạo một file
<?php phpinfo(); ?> Kiểm tra thử Chuyển đổi nhanh phiên bản PHP với SPHP Cài đặt # curl -L https://gist.githubusercontent.com/rhukster/f4c04f1bf59e0b74e335ee5d186a98e2/raw > /usr/local/bin/sphp # chmod +x /usr/local/bin/sphp # export PATH=/usr/local/bin:/usr/local/sbin:$PATH Nếu có cài nhiều phiên bản PHP và muốn chuyển nhanh sang một phiên bản thì gõ lệnh #CHUYỂN SANG PHP5.6 # sphp 5.6 #CHUYỂN SANG PHP 7.2 # sphp 7.2 Cài đặt extension memcached, xdebug cho PHP, cơ bản sử dụng pecl để cài đặt (kể cả các extension khác nếu cần) brew install zlib brew install libmemcached pecl install memcached pecl install xdebug Sử dụng PHP-FPMMỗi phiên bản cài đặt trên, đồng thời nó cũng có PHP-FPM được cài đặt. File cấu hình trong thư mục tương ứng với bản PHP, ví dụ PHP 8.0 thì file cầu hình tại Với PHP-FPM thì máy chủ Web (như Apache, Nginx) sẽ chạy code PHP thông qua proxy, được phục vụ bởi dịch vụ PHP-FPM đang lắng nghe trên cổng nào đó (mặc định là 9000). Để rõ hơn cho trường hợp sử dụng này hãy tham khảo Apache Handler và Nginx - VHost Nếu bạn muốn dùng PHP-FPM để chạy code PHP, để tiện hãy mở file cấu hình listen = 127.0.0.1:9000 Sau đó dùng lệnh Khi bạn cập nhật cấu hình, để khởi động lại dịch vụ bạn dùng lệnh (ví dụ cho bản php 7.2) brew services restart Nếu dịch vụ đang bị dừng dùng lệnh sau để chạy brew services start Để dừng dịch vụ brew services stop Khi bạn chuyển phiên bản PHP, bạn cần dừng dịch vụ, sau khi chuyển phiên bản bạn dùng brew services start chạy bản mới. Nếu dịch vụ đang chạy, dùng lệnh sau kiểm tra xem đã có dịch vụ PHP đang chạy và cổng lắng nghe lsof -Pni4 | grep LISTEN | grep php Cài đặt MySQLCài đặt bằng brew #Cài phiên bản mặc định 8. # brew install mysql #Nếu cài phiên bản 5.6 # brew install #Nếu cài phiên bản 5.7 # brew install Thiết lập MySQL chạy cùng hệ thống # brew services start mysql # Kiểm tra xem các dịch vụ nào đang thiết lập chạy tự động # brew services list # Kiểm tra phiên bản mysql # mysql -V # Chạy mysql nếu đang dừng # brew services run mysql # Dừng mysql # brew services stop mysql # Khởi động lại mysql # brew services restart mysql Mặc định user có quyền cao nhất là mysqladmin -u root password 'newpassword' File config my.cn tìm bằng lệnh Công cụ quản trị MySQLCó nhiều công cụ để quản trị MySQL, thậm chí có thể sử ngay ứng dụng nền web như Cài đặt Workbench brew cask install --appdir="/Applications" mysqlworkbench Cài đặt Workbench brew cask install --appdir="/Applications" sequel-pro |