Pada OS X 10.8 (Mountain Lion) keatas, termasuk yang saya gunakan (OS X 10.10 Yosemite) telah dibekali dengan dengan apache
secara default, tinggal mengaktifkan nya saja dengan perintah
$ sudo apachectl start
Sebelum August 2015, saya masih menggunakan OS X Yosemite di MacBook Pro saya. Hingga muncul versi terbaru dari OS X El Capitan dengan berbagai fitur menggiurkannya. Saya tertarik dan akhirnya memutuskan untuk melakukan upgrade, namun ternyata pilihan tersebut cukup merepotkan saya dihari berikutnya. Karena ternyata apache
tidak bisa start di OS X El Capitan, respon yang didapat sebagai berikut
(48)Address already in use: make_sock: could not bind to address [::]:8080 (48)Address already in use: make_sock: could not bind to address 0.0.0.0:8080 no listening sockets available, shutting down Unable to open logs
Menurut error log nya dikatakan bahwa apache tidak bisa menggunakan port 8080
karena sudah digunakan oleh aplikasi lain, padahal ketika dicek tidak ada aplikasi yang menggunakan port tersebut. Setelah beberapa hari Googling tetap tidak juga menemukan solusi, untungnya ada alternatif untuk menjalankan apache
kembali di versi terbaru dari OS X.
AMPPS
AMPPS adalah web server stack dari Softaculous yang sudah dilengkapi Apache, MySQL, PHP, dan beberapa app lainnya dalam satu package. Untuk instalasinya sendiri tidak sulit, tinggal men-download file .dmg
nya kemudian memindahkan directory AMPPS
ke dalam directory Applications
, selesai!
Konfigurasi httpd.conf
Jika sebelumnya menggunakan apache
default dari OS X, konfigurasi httpd.conf
yang lama dapat disesuaikan dengan yang baru sehingga kita tidak perlu lagi memintahkan semua file atau directory web yang lama ke lokasi AMPPS
yang baru. Dalam kasus ini saya meletakkan semua file dan directory untuk web di /Users/Zaf/Sites
, untuk itu yang perlu diganti hanya DocumentRoot
dan Directory
saja.
Setelah menekan tombol Configuration (seperti gambar disamping kanan) nantinya akan terbuka httpd.conf
dalam aplikasi TextEdit. Cari line
DocumentRoot "{$path}/www"
kemudian ganti dengan lokasi dimana file atau directory web yang sudah ada.
DocumentRoot "/Users/Zaf/Sites"
Selanjutnya cari kembali line
<Directory "{$path}/www">
kemudian ganti dengan
<Directory "/Users/Zaf/Sites">
Migrasi Database
Sayangnya apache
di AMPPS
hanya dikonfigurasikan untuk dapat terkoneksi dengan MySQL
yang ada pada AMPPS
saja, untuk itu kita perlu melakukan pemindahan data dari MySQL server lama (yang sudah terkonfigurasi dengan apache
default OS X) ke MySQL server dari AMPPS
(export
atau mysqldump
). Untungnya akses ke MySQL AMPPS harus menjalankan mysql pada directory /Applications/AMPPS/mysql/bin
, sehingga kita tidak ada masalah untuk membedakan antara MySQL server yang lama dengan MySQL server yang baru (AMPPS).