PHP is bundled with macOS since macOS X (10.0.
Open the Finder and go to /Library/WebServer/Documents/localhost . All files that are in there are processed by the local webserver (Apache and PHP, if you want to know that). Place your file in there and open your webserver and call http://localhost/YourFile.php and it will call the file YourFile.
(Edit: This method appears to work fine for 10.9 (Mavericks), 10.10 (Yosemite) and 10.11 (El Capitan), so I figured I'd mention that for any new influx of slightly frustrated OS X updaters :D )
Edit your /etc/apache2/httpd.conf and make sure the line:
LoadModule php5_module libexec/apache2/libphp5.so
...exists. I think it's commented out by default in the standard OS X config, but from what I remember, you just need to uncomment it, then re-start Apache:
sudo apachectl restart
And you should be good to go.
UPDATE: Please note that this was written for OS X pre-(High) Sierra. If you run OSX 10.12 or newer, please follow this more than excellent guide by Andy Miller: macOS 10.15 Catalina Apache Setup: Multiple PHP Versions
I too like to use things that are basically already there. I don't see why anyone would use MAMP or AMPPS (or any other packed 3rd party out-of-box webserver app) when Mac OS X comes with apache and PHP by default.
Took me a couple of tries to get it working, so here is basically what did it for me and hopefully it'll help you guys save a little time.
Like Matt Gibson said, start terminal and type: (sudo requires your root password)
sudo nano /etc/apache2/httpd.conf
Then uncomment this line by removing the '#' in front of it (ctrl+v can be used as page-down)
LoadModule php5_module libexec/apache2/libphp5.so
To make sure you can include files etc in PHP, scroll to "User _www" (in my case) and change that to: (where "yourusername" is the user you login with)
User yourusername
You can leave the group as-is, "Group _www" by default on a fresh OS X Mountain Lion install.
On default apache only looks for index.html, so search for "DirectoryIndex index.html" and change that to: (adding index.html at the end is optional of course)
DirectoryIndex index.php index.html index.htm
Exit and save by pressing ctrl+x (and confirm with "y")
Then restart apache:
sudo apachectl restart
My phpinfo(); returned with a PHP Version 5.3.15
==================
Since I find it useful to have my local sites in my user dir, I created a directory /Users/yourusername/Sites (which isn't there on default anymore in Mountain Lion).
Again, edit httpd.conf via "sudo nano /etc/apache2/httpd.conf" and ...
Scroll down to "DocumentRoot" and change it to: (where "yourusername" is the username you login with)
DocumentRoot "/Users/yourusername/Sites/"
Scroll to where it says "# This should be changed to whatever you set DocumentRoot to." and change the next line to: (where "yourusername" is the username you login with)
<Directory "/Users/yourusername/Sites/">
Then exit and save by pressing ctrl+x (and confirm with "y")
Restart apache.
I have one word for you. MAMP.
Try it phpbrew
It's ease build, install tool for PHP, any version.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With