PHP: Installation on Mac OS X - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Compiling for OS X Server Debian GNU/Linux installation notes

Last updated: Fri, 26 Jan 2007

view this page in

# Глава 5. Installation on Mac OS X

This section contains notes and hints specific to installing PHP on Mac OS X. There are two slightly different versions of Mac OS X, Client and Server, our manual deals with installing PHP on both systems. Note that PHP is not available for MacOS 9 and earlier versions.

# Using Packages

There are a few pre-packaged and pre-compiled versions of PHP for Mac OS X. This can help in setting up a standard configuration, but if you need to have a different set of features (such as a secure server, or a different database driver), you may need to build PHP and/or your web server yourself. If you are unfamiliar with building and compiling your own software, it's worth checking whether somebody has already built a packaged version of PHP with the features you need.

The following resources offer easy to install packages and precompiled binaries for PHP on Mac OS:

- Darwin: http://darwinports.opendarwin.org/

- Entropy: http://www.entropy.ch/software/macosx/php/

- Fink: http://fink.sourceforge.net/

add a note User Contributed Notes
Installation on Mac OS X
Dan Black
08-Mar-2007 08:00
`My httpd.conf had some of the lines, but not all of them -- mine was missing the LoadModule and AddModule lines for php. I'm not sure why -- I don't delete any of those; I just comment them out if I'm not using them. Plus, the note above put a space in "LoadModule"; it has no space. I didn't know about the "apachectl graceful" trick, though -- since "httpd -k restart" stopped working (probably around 10.2), I had just been doing it manually -- find the process, kill it, and hit httpd again -- thanks for the tip!
So for those who are missing any of the lines, here are the full lines.
In the section with all the other LoadModules:
LoadModule php4_module libexec/httpd/libphp4.so</div>
Directly below that section should be the AddModules; you need:
AddModule mod_php4.c
And then the AddType lines should be right after the language priorities (so after the AddCharset lines and after the LanguagePriority bit):
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Then restart apache/httpd as described above, and hopefully you should be good.
BTW, the actual module should be at:
/usr/libexec/httpd/libphp4.so
So if things fail, you can check to see if that's there.
Thanks to others who posted here; it definitely helped and got me on the right track. I just had to find the module manually to write my own LoadModule line.`
Jeff Hayden
09-Sep-2006 11:17
`Just a note. The darwinports software is now macports and you can get it at: http://www.macports.org/
If you use macports, be sure to change any refernces you may have in your calling scripts to macports as the file macports now gets installed.`
andreas at fink dot org
18-Aug-2004 12:01
`To build on MacOS X 10.3.5 set the environment variable CFLAGS in the following way (depending on your shell)
setenv CFLAGS "-DBIND_8_COMPAT=1 -DEAPI -O3"
export CFLAGS="-DBIND_8_COMPAT=1 -DEAPI -O3"
Then launch configure with the options:
./configure --prefix=/usr --mandir=/usr/share/man ....
The -DBIND_8_COMPAT=1 gets you over a problem in the DNS files because MacOS X has definitions for Bind9 and PHP expects Bind8 definitions. -DEAPI is needed if you build it for Apache 1.3.31. -O3 enables the gcc optimizer.
You can also add one of the following lines to your CFLAGS depending on the CPU you use to further improve speed:
-mcpu=G3 -mtune=G3
-mcpu=G4 -mtune=G4
-mcpu=G5 -mtune=G5`
Rick
28-Oct-2003 06:12
`under MacOS 10.3 if your compile fails
vi Makefile
find the dns.c entry
add the switch -DBIND_8_COMPAT
run make again`
jack dash pinette at uiowa dot edu
24-Jan-2003 01:56
`PHP 4.3.0 can easily be build on Mac OS X client; you don't need to download a binary. The process is quite fast and painless.
See
http://www.onlamp.com/pub/a/php/2003/01/17/phpcookbook.html
for details.`
php at radicalcomputingconcepts dot com
15-May-2002 04:35
`10.1 with fink installed into /sw ,mysql installed from fink.
finally :
Apache/1.3.24 (Darwin) DAV/1.0.3 PHP/4.2.1 mod_ssl/2.8.8 OpenSSL/0.9.6c configured
initial apache config:
./configure --prefix=/sw --enable-shared=max --enable-module=most --target=apache --with-layout=GNU
--enable-suexec --suexec-caller=www-data
then php config:
./configure --prefix=/sw --with-xml --with-apache=../apache_1.3.24 --with-curl=/sw --with-pdflib=/sw
--enable-exif --with-mysq=/sw
then mod-ssl config:
./configure --with-apache=../apache_1.3.24 --with-ssl=/sw --enable-rule=SSL_SDBM
final apache config:
./configure --prefix=/sw --enable-shared=max --enable-module=most --target=apache --with-layout=GNU
--enable-suexec --suexec-caller=www-data --activate-module=src/modules/php4/libphp4.a --enable-module=ssl
on final make of apache there was error in src/modules/ssl. i had to rm -ldbm and -lgcc and run gcc line by hand. then was able to finish make.
i dont know what effect that may have on the build and i am interested to know, this was the only problem spot finally after many hours of hacking at it.
testing so far:
phpinfo() via http and https works.`
info at ericbontenbal dot nl
18-Feb-2002 09:43
`for using PHP on MacOSX, see article #106485 of the Apple knowledge base`
lanhel at mac dot com
07-Nov-2001 06:14
`Getting PHP running on 10.1 is simple.
1. su to root
2. Edit /etc/httpd/httpd.conf
3. Uncomment "Load Module php4_module" line.
4. Uncomment "AddModule mod_php4.c" line.
5. Uncomment "AddType application/x-httpd-php .php" line.
6. Uncomment "AddType application/x-httpd-php-source .phps" line.
7. Find "<Directory /home/*/Sites>" block and uncomment the entire Directory directive block.
This will allow PHP to execute from ~/Sites directory.`
larry(at)shafferinteractive.com
24-Sep-2001 05:40
`For the latest on Mac OS X PHP installs (as of 10.0.4 on 9.24.01) check out http://developer.apple.com/internet/macosx/php.html
This page also has some info on MySQL installs.`
oster at ieee dot org
30-Jul-2001 12:17
`If you've got Mac OS X pre-installed on your Mac, you've also got php4 pre-installed. You don't need to download or compile anything. You just need to edit the /etc/httpd/httpd.conf file. Use the "sudo open -a TextEdit..." command line, above. Search for "php", and make sure you've un-commented _all_ the relevant lines: the two AddType lines above, and also the AddModule and LoadModule lines. (but not the AddType lines for php3, since you'll be using php4.) Save and restart Apache with "sudo apachectl graceful", and you are done.`
add a note
Compiling for OS X Server Debian GNU/Linux installation notes

Last updated: Fri, 26 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 10:36:09 2007 PST