PHP Manual
Prev | Chapter 3. Installation | Next

# Unix/Mac OS X installs

This section contains notes and hints specific to installing PHP on Mac OS X Server.

## 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.

## Compiling for OS X server

There are two slightly different versions of Mac OS X, client and server. The following is for OS X Server.

Example 3-2. Mac OS X server install

    1. Get the latest distributions of Apache and PHP
    2. Untar them, and run the configure program on Apache like so.
        ./configure --exec-prefix=/usr \
        --localstatedir=/var \
        --mandir=/usr/share/man \
        --libexecdir=/System/Library/Apache/Modules \
        --iconsdir=/System/Library/Apache/Icons \
        --includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \
        --enable-shared=max \
        --enable-module=most \
        --target=apache

    4. You may also want to add this line:
        setenv OPTIM=-O2
        If you want the compiler to do some optimization.

    5. Next, go to the PHP 4 source directory and configure it.
        ./configure --prefix=/usr \
        --sysconfdir=/etc \
        --localstatedir=/var \
        --mandir=/usr/share/man \
        --with-xml \
        --with-apache=/src/apache_1.3.12

        If you have any other additions (MySQL, GD, etc.), be sure to add
        them here. For the --with-apache string, put in the path to your
        apache source directory, for example "/src/apache_1.3.12".
    6. make
    7. make install
        This will add a directory to your Apache source directory under
        src/modules/php4.

    8. Now, reconfigure Apache to build in PHP 4.
        ./configure --exec-prefix=/usr \
        --localstatedir=/var \
        --mandir=/usr/share/man \
        --libexecdir=/System/Library/Apache/Modules \
        --iconsdir=/System/Library/Apache/Icons \
        --includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \
        --enable-shared=max \
        --enable-module=most \
        --target=apache \
        --activate-module=src/modules/php4/libphp4.a

        You may get a message telling you that libmodphp4.a is out of date.
        If so, go to the src/modules/php4 directory inside your apache
        source directory and run this command:

        ranlib libmodphp4.a

        Then go back to the root of the apache source directory and run the
        above configure command again. That'll bring the link table up to
        date.

    9. make

    10. make install

    11. copy and rename the php.ini-dist file to your "bin" directory from your
        PHP 4 source directory:
        cp php.ini-dist /usr/local/bin/php.ini

        or (if your don't have a local directory)

        cp php.ini-dist /usr/bin/php.ini

Other examples for Mac OS X client and Mac OS X server are available at Stepwise.

## Compiling for MacOS X client

Those tips are graciously provided by Marc Liyanage.

The PHP module for the Apache web server included in Mac OS X. This version includes support for the MySQL and PostgreSQL databases.

NOTE: Be careful when you do this, you could screw up your Apache web server!

Do this to install:

- 1. Open a terminal window

- 2. Type "wget http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz", wait for download to finish

- 3. Type "gunzip libphp4.so.gz"

- 4. Type "sudo apxs -i -a -n php4 libphp4.so"

Now type "`sudo open -a TextEdit /etc/httpd/httpd.conf`" TextEdit will open with the web server configuration file. Locate these two lines towards the end of the file: (Use the Find command)

    #AddType application/x-httpd-php .php
       #AddType application/x-httpd-php-source .phps

Remove the two hash marks (`#`), then save the file and quit TextEdit.

Finally, type "`sudo apachectl graceful`" to restart the web server.

PHP should now be up and running. You can test it by dropping a file into your "Sites" folder which is called "test.php". Into that file, write this line: "`<?php phpinfo() ?>`".

Now open up `127.0.0.1/~your_username/test.php` in your web browser. You should see a status table with information about the PHP module.

Prev | Home | Next
Unix/Linux installs | Up | Unix/OpenBSD installs