macOS Monterey เป็นรุ่นที่ตัด php ออกจากสารบบ ถ้าจะใข้ต้องลงเอง 555
เริ่มกันเลย ก่อนอื่นให้เปิด Terminal ขึ้นมาก่อน แล้วป้อนคำสั่ง
1. ติดตั้ง Xcode command line tools
xcode-select --install
2. ติดตั้ง Apache (ล้างของเก่าแล้วลงใหม่)
sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null
brew install httpd
จากนั้นก็ทำการ stop แล้ว start service ของ php
brew services stop httpd
brew services start httpd
สำหรับ document root ในการนำไฟล์ html ไปใส่ จะเก็บที่ /usr/local/var/www
3. ติดตั้ง Visual Studio Code กัน
brew install --cask visual-studio-code
แต่ถ้าเคยติดตั้ง VS Code ไปแล้วก็ให้หาดูว่ามี โฟลดเดอร์ /opt/homebrew/bin อยู่ไหม
ถ้าไม่มีให้สร้างก่อน ด้วยคำสั่ง mkdir แล้วเรียกคำสั่ง ตามด้านล่าง
sudo ln -s /Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code /opt/homebrew/bin/code
4. ติดตั้ง php 7.4 รุ่นอื่นรอให้เขาทำออกมาก่อน แล้วก็เปลี่ยนตัวเลขรุ่นด้านหลังคำสั่งเอาเองนะ
brew install shivammathur/php/php@7.4
กำหนด path ให้กับ php ด้วยคำสั่ง
brew link --overwrite --force php@7.4
การ start / stop / restart php จะสั่งอะไรก็เลือกเอาได้ ตามต้องการ
แต่ยังไงสุดท้ายก็อย่าลืม start ละ
stop
brew services stop shivammathur/php/php@7.4
start
brew services start shivammathur/php/php@7.4
brew services restart shivammathur/php/php@7.4
หลังจาก start php ได้แล้ว ลองทดสอบดู ถาม version ของ php กัน
php -v
ลองเรียกใช้งาน phpinfo()
php -r 'phpinfo();'
5. แก้ไขไฟล์ httpd.conf
ให้เข้าไปแก้ที่โฟลดเดอร์ /usr/local/etc/httpd/ (สำหรับ cpu intel นะ)
ถ้า cpu M1 ก็ไปอีกที่ ... ลืม ไว้หาก่อน
sudo code httpd.conf
แล้วไปเพิ่ม
LoadModule php7_module /usr/local/opt/php@7.4/lib/httpd/modules/libphp7.so
แก้ตรง dir_module ตามนี้
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>