Dengan menggunakan semua ini, saya telah sangat sukses menginstal PHP saya sendiri di Server FileMaker macOS saya untuk penerbitan web PHP kustom dan Server Web macOS saya (untuk situs web, server munki dan server munkireport dan berbagai proxy jarak jauh. (keduanya Mac di Monterey)
Artikel ini untuk pengembang web yang ingin memasang Apache dan PHP sebagai bagian dari penyiapan lingkungan pengembangan di Mac mereka
Pastikan untuk memeriksa Bagian Satu; . 13 Sierra Tinggi dan 10. 14 Mojave menggunakan Homebrew adalah prasyarat untuk artikel ini
Sebelumnya, saya mengandalkan versi Apache dan PHP yang sudah dimuat sebelumnya dengan OS di MacBook Pro saya. Saya kemudian akan menginstal ekstensi PHP yang saya butuhkan (mis. g. Xdebug, Redis, dll. ) dari Homebrew
Mulai 1 April 2018, Homebrew menghentikan keran “Homebrew/php” demi pendekatan “Homebrew/core” yang baru. Selain itu, meskipun beberapa ekstensi penting masih didukung (mis. g. MySQLi), sebagian besar ekstensi PHP tidak lagi didistribusikan melalui Homebrew sama sekali (mis. g. php71-xdebug, php71-redis, dll. ) dan membutuhkan instalasi melalui PECL (PHP Extension Community Library)
Dengan aturan keamanan yang terus berubah di macOS bersama dengan komplikasi penggunaan versi PHP pra-instal macOS bersama dengan PECL, saya telah memutuskan untuk mengubah seluruh pendekatan saya dan alih-alih menggunakan pengaturan sepenuhnya dari Homebrew. Pendekatan baru ini memungkinkan penginstalan yang lebih sederhana, lebih banyak fleksibilitas untuk pembuatan versi, dan akan terus berfungsi di semua versi macOS
Instruksi ini berfungsi sama untuk macOS 10. 13 Sierra Tinggi dan 10. 14 Mojave. Saya belum menguji versi macOS sebelumnya, tetapi seharusnya bekerja dengan cara yang sama. Selain itu, Anda tidak harus memulai dengan penginstalan OS baru untuk menggunakan artikel ini, tetapi petunjuk ini dimulai dari awal dengan asumsi Anda tidak menginstal apa pun karena itu cara termudah untuk melakukannya
Mari kita mulai
Instal Homebrew
Jika Anda belum melakukan ini, maka Anda harus melakukannya
(Perhatikan bahwa perintah berikut adalah satu baris yang dibungkus karena batasan lebar halaman di Medium. Pastikan untuk menyalin seluruh baris)
$ ruby -e "$(curl -fsSL //raw.githubusercontent.com/Homebrew/install/master/install)"Buat Direktori File Log PHP
PHP hadir dengan pra-konfigurasi dengan direktori lognya sendiri, tetapi kami akan membuat folder "/usr/local/log/" kami sendiri sehingga mudah ditemukan saat kami membutuhkannya. Ikuti langkah-langkah ini untuk membuat direktori yang sesuai dan mengatur izinnya. Abaikan pesan "sudah ada" yang mungkin Anda terima;
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_Instal dan Konfigurasi PHP
Hingga akhir Maret 2018, semua bir terkait PHP ditangani oleh Homebrew/php tap, tetapi sudah tidak digunakan lagi. Jadi sekarang kami menggunakan apa yang tersedia di paket Homebrew/core. Ini harus dipertahankan dengan lebih baik, tetapi merupakan kumpulan paket yang jauh lebih lengkap
$ brew install php@7.1Perlu dicatat bahwa untuk menginstal versi lain dari PHP, Anda cukup mengubah nomor versi (mis. g. php@7. 2). Anda juga memiliki kemampuan untuk menginstal beberapa versi PHP secara bersamaan dan beralih di antara versi tersebut. Namun dokumen ini dirancang khusus untuk menginstal dan mengkonfigurasi PHP 7. 1
php baru Anda. File ini terletak di direktori berikut
Aktifkan Modul Apache yang Diperlukan
Sekarang kita perlu mengkonfigurasi Apache untuk menggunakan modul PHP yang baru diinstal. Untuk melakukan ini, kita perlu mengedit file httpd. conf kami instal di Bagian Satu dari seri ini
$ open -e /usr/local/etc/httpd/httpd.conf_Gulir ke bagian bawah entri LoadModule dan tambahkan baris berikut setelah baris modul mod_rewrite
(Perhatikan bahwa perintah berikut adalah satu baris yang dibungkus karena batasan lebar halaman di Medium. Pastikan untuk menyalin seluruh baris)
LoadModule php7_module /usr/local/opt/php@7.1/lib/httpd/modules/libphp7.soTetapkan Indeks Direktori dan Penangan File
Anda juga perlu mengatur Indeks Direktori untuk PHP secara eksplisit, jadi carilah blok teks berikut
<IfModule dir_module>DirectoryIndex index.html
</IfModule>_
… lalu pilih dan ganti dengan baris berikut
<IfModule dir_module>DirectoryIndex index.php index.html
</IfModule>
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
Simpan dan keluar dari editor teks
Untuk memulai layanan PHP dan memastikannya dimulai saat reboot, masukkan perintah berikut di Terminal
$ brew services start php@7.1_Validasi Instalasi PHP
Untuk menguji apakah PHP diinstal dan berjalan seperti yang diharapkan, buat file bernama index. php di folder Situs yang Anda buat di Bagian Satu dari dua seri bagian ini
$ echo "<?php phpinfo();" > ~/Sites/index.php_Mulai ulang Apache
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_0Sekarang lakukan hard refresh pada browser Anda (atau tutup dan keluar dari browser Anda dan mulai kembali). Kemudian telusuri ke host lokal Anda dan Anda akan melihat halaman info PHP yang mirip dengan yang di bawah ini
Jika Anda melihat halaman info PHP yang serupa, maka selamat. Anda sekarang menjalankan Apache dan PHP dengan sukses
Jika Anda memiliki masalah dan sepertinya PHP tidak dimuat dengan benar, mungkin sesi browser Anda mencegahnya menyegarkan. Coba matikan dan tutup browser Anda sepenuhnya. Jalankan reset apache lagi dan buka browser Anda dan coba navigasikan ke localhost Anda. Ini harus bekerja
Instal Ekstensi PECL
Mulai Maret 2018, Homebrew tidak lagi mendistribusikan sebagian besar ekstensi PHP dan harus dipasang menggunakan PECL. Ini termasuk ekstensi xdebug, igbinary dan redis
Kabar baiknya adalah PECL disertakan dalam instalasi PHP Anda dan yang perlu Anda lakukan hanyalah menambahkan lokasi binnya ke PATH sistem Anda untuk membuatnya mulai bekerja dari baris perintah Anda
** Catatan. Jika Anda menginstal PHP 7. 2, maka Anda dapat melewati bagian ini karena PECL telah ditambahkan ke PATH sistem Anda
** Catatan. Sebelum menjalankan perintah di bawah ini, sebaiknya cd ke /usr/local/Cellar/php@7 Anda. 1/ folder dan verifikasi nomor versi yang tercantum dalam perintah (mis. g. “7. 1. 22") itu bisa menjadi sesuatu yang berbeda
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_1Ini akan menambahkan direktori PHP Anda ke jalur sistem Anda dan memulai ulang bash. Anda harus baik untuk pergi
Buka Terminal dan masukkan perintah di bawah ini. Anda akan melihat daftar opsi alih-alih "perintah tidak ditemukan". Jika Anda melihat daftar opsi, Anda dapat melakukannya
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_2Instal XDebug
Ini akan menginstal XDebug v2. 6. 0 yang merupakan rilis stabil saat ini (saat tulisan ini dibuat) yang mendukung PHP 7. 1
Ada versi lain dari XDebug. Anda dapat memeriksanya di sini dan cukup mengganti nomor versi yang Anda inginkan
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_3Ini akan menambahkan baris ke bagian atas php Anda. ini yang akan kami perbaiki setelah kami menginstal ekstensi yang tersisa
Instal Igbinary
Ini akan menginstal Igbinary v2. 0. 6 yang merupakan rilis stabil saat ini (saat tulisan ini dibuat) dan mendukung PHP 7. 1
Ada versi lain dari Igbinary. Anda dapat memeriksanya di sini dan cukup mengganti nomor versi yang Anda inginkan
**Catatan. Anda harus menginstal ekstensi Igbinary sebelum menginstal Redis
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_4Ini akan menambahkan baris ke bagian atas php Anda. Ini file yang akan kita perbaiki setelah kita menginstal Redis dan ekstensinya
Instal Redis
Pertama instal komponen server Redis untuk lingkungan dev kami
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_5Setelah selesai, mulai Redis dan atur untuk memulai ulang saat reboot
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_6Instal Ekstensi PHP Redis
Ini akan menginstal Redis v4. 0. 2 yang merupakan rilis stabil saat ini (saat tulisan ini dibuat) dan mendukung PHP 7. 1
Ada versi lain dari Redis. Anda dapat memeriksanya di sini dan cukup mengganti nomor versi yang Anda inginkan
**Catatan. Anda harus menginstal ekstensi Igbinary sebelum menginstal Redis
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_7Anda akan ditanya beberapa pertanyaan selama instalasi. Jawab mereka sebagai berikut
- aktifkan dukungan serializer igbinary? . Ya
- aktifkan dukungan kompresi lzf? . Tidak
Edit Pengaturan Konfigurasi PHP
Sekarang kita telah menginstal semua ekstensi yang diperlukan, kita dapat membuat beberapa entri terakhir ke php. ini untuk lingkungan pengembangan kami
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_8Temukan dan hapus tiga baris yang ditambahkan di bagian paling atas php. ini di langkah sebelumnya. Kami akan menambahkannya kembali sebentar lagi
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_9Gulir ke bagian bawah php. ini dan rekatkan baris berikut di
$ brew install php@7.10Simpan dan keluar dari editor teks
Mulai ulang Apache
$ sudo mkdir /usr/local/log$ sudo mkdir /usr/local/log/php$ sudo chgrp -R staff /usr/local/log/php$ sudo chmod -R ug+w /usr/local/log/php/_0Buka browser Anda dan arahkan ke http Anda. //localhost dan Anda akan melihat halaman info PHP Anda. Gulir ke bawah dan Anda akan melihat semua informasi ekstensi PHP yang diperlukan ditampilkan untuk igbinary, Redis, dan XDebug dengan nomor versi yang tepat yang Anda pasang di langkah sebelumnya
Selamat. Anda sekarang memiliki Apache dan PHP dengan ekstensi terkait yang berjalan di lingkungan pengembangan Mac Anda
Masih ada lagi
Meningkatkan ke macOS 10. 15 Katalina?