Ini untuk Mac OS X dengan penginstalan asli Apache HTTP dan penginstalan kustom MySQL .
Jawabannya didasarkan pada respon yang sangat baik dari @ alec-gorge, tetapi karena saya harus mencari di Google beberapa perubahan spesifik untuk mengonfigurasi konfigurasi saya, kebanyakan khusus untuk Mac OS X, saya pikir saya akan menambahkannya di sini demi kelengkapan.
Aktifkan dukungan PHP5 untuk Apache HTTP
Pastikan dukungan PHP5 diaktifkan di /etc/apache2/httpd.conf.
Edit file dengan sudo vi /etc/apache2/httpd.conf(masukkan kata sandi saat diminta) dan hapus komentar (hapus ;dari awal) baris untuk memuat modul php5_module .
LoadModule php5_module libexec/apache2/libphp5.so
Mulai Apache HTTP dengan sudo apachectl start (atau restartjika sudah dimulai dan perlu dimulai ulang untuk membaca kembali file konfigurasi).
Pastikan itu /var/log/apache2/error_logberisi baris yang memberi tahu Anda bahwa php5_module diaktifkan - Anda akan melihatnyaPHP/5.3.15 (atau serupa).
[notice] Apache/2.2.22 (Unix) DAV/2 PHP/5.3.15 with Suhosin-Patch configured -- resuming normal operations
Mencari nama file Socket
Saat MySQL aktif dan berjalan (dengan ./bin/mysqld_safe ) harus ada baris debug yang dicetak ke konsol yang memberi tahu Anda di mana Anda dapat menemukan file log. Catat nama host dalam nama file - localhostdalam kasus saya - yang mungkin berbeda untuk konfigurasi Anda.
File yang muncul setelah Logging toitu penting. Di situlah MySQL mencatat pekerjaannya.
130309 12:17:59 mysqld_safe Logging to '/Users/jacek/apps/mysql/data/localhost.err'.
130309 12:17:59 mysqld_safe Starting mysqld daemon with databases from /Users/jacek/apps/mysql/data
Buka localhost.errfile (sekali lagi, nama Anda mungkin berbeda), yaitu tail -1 /Users/jacek/apps/mysql/data/localhost.erruntuk mengetahui nama file soket - ini harus menjadi baris terakhir.
$ tail -1 /Users/jacek/apps/mysql/data/localhost.err
Version: '5.5.27' socket: '/tmp/mysql.sock' port: 3306 MySQL Community Server (GPL)
Perhatikan socket:bagian - itu file soket yang harus Anda gunakanphp.ini .
Ada cara lain (beberapa mengatakan cara yang lebih mudah) untuk menentukan lokasi nama file soket dengan masuk ke MySQL dan menjalankan:
show variables like '%socket%';
Konfigurasi PHP5 dengan dukungan MySQL - /etc/php.ini
Berbicara tentang php.ini ...
Di /etcdirektori ada file /etc/php.ini.default . Salin ke /etc/php.ini .
sudo cp /etc/php.ini.default /etc/php.ini
Buka /etc/php.inidan cari mysql.default_socket .
sudo vi /etc/php.ini
Defaultnya mysql.default_socketadalah /var/mysql/mysql.sock. Anda harus mengubahnya ke nilai yang telah Anda catat sebelumnya - itu /tmp/mysql.sockdalam kasus saya.
Ganti /etc/php.inifile untuk mencerminkan nama file soket:
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
Verifikasi akhir
Mulai ulang HTTP Apache.
sudo apachectl restart
Periksa log jika tidak ada kesalahan yang terkait dengan PHP5. Tidak ada kesalahan berarti Anda sudah selesai dan PHP5 dengan MySQL seharusnya berfungsi dengan baik. Selamat!
/etc/init.d/mysql startjika Anda menggunakan distro berbasis debian. jika gagal, periksa/etc/my.cnffile untuk jalur file soket mysql yang benar.