2018

Note: This post is for new installations. If you have installed Apache, PHP, and MySQL for Mac OS Sierra, read my post on Updating Apache, PHP, and MySQL for macOS Mojave.

Click on the link above to download Apache Directory Studio for macOS. The download appeares in the Downloads folder in Finder. Double-click on the disk image to open it. Drag-and-drop the Apache Directory Studio application on the Applications folder to install it. Pub rsa4096/118BCCB6 2018-06-05 SC expires: 2022-06-04 Key fingerprint = CBAF 69F1 73A0 FEA4 B537 F470 D66C 9593 118B CCB6 uid Christoph M. Becker php.net pub 2048D/5DA04B5D 2012-03-19 Key fingerprint = F382 5282 6ACD 957E F380 D39F 2F79 56BC 5DA0 4B5D uid Stanislav Malyshev (PHP key) uid Stanislav Malyshev (PHP key) php.net uid Stanislav Malyshev (PHP.

I am aware of the web server software available for macOS, notably MAMP, as well as package managers like brew. These get you started quickly. But they forego the learning experience and, as most developers report, can become difficult to manage.

The thing is macOS runs atop UNIX. So most UNIX software installs easily on macOS. Furthermore, Apache and PHP come preinstalled with macOS. To create a local web server, all you need to do is configure Apache and install MySQL.

Running Commands

First, open the Terminal app and switch to the root user so you can run the commands in this post without any permission issues:

Enable Apache on macOS

Verify It works! by accessing http://localhost

Enable PHP for Apache

First, make a backup of the default Apache configuration. This is good practice and serves as a comparison against future versions of macOS.

Now edit the Apache configuration. Feel free to use a different editor if you are not familiar with vi.

Uncomment the following line (remove #):

Restart Apache:

You can verify PHP is enabled by creating a phpinfo() page in your DocumentRoot.

The default DocumentRoot for macOS Mojave is /Library/WebServer/Documents. You can verify this from your Apache configuration.

Now create the phpinfo() page in your DocumentRoot:

Verify PHP by accessing http://localhost/phpinfo.php

Install MySQL on macOS Mojave

Download and install the latest MySQL generally available release DMG for macOS. While MySQL 8 is the latest version, many of my projects still use MySQL 5.7. So I still prefer installing the older version.

When the install completes it will provide you with a temporary password. Copy this password before closing the installer. You will use it again in a few steps.

The README suggests creating aliases for mysql and mysqladmin. However there are other commands that are helpful such as mysqldump. Instead, you can update your path to include /usr/local/mysql/bin.

Note: You will need to open a new Terminal window or run the command above for your path to update.

Finally, you should run mysql_secure_installation. While this isn't necessary, it's good practice to secure your database. This is also where you can change that nasty temporary password to something more manageable for local development.

Connect PHP and MySQL

You need to ensure PHP and MySQL can communicate with one another. There are several options to do so. I like the following as it doesn't require changing lots of configuration:

Additional Configuration (optional)

The default configuration for Apache 2.4 on macOS seemed pretty lean. For example, common modules like mod_rewrite were disabled. You may consider enabling this now to avoid forgetting they are disabled in the future.

I edited my Apache Configuration:

I uncommented the following lines (remove #):

If you develop multiple projects and would like each to have a unique url, you can configure Apache VirtualHosts for macOS.

If you would like to install PHPMyAdmin, return to my original post on installing Apache, PHP, and MySQL on macOS.

Find this interesting? Let's continue the conversation on Twitter.

I mainly do web development on my 15 in Macbook Pro. Mac runs on base Unix foundation so mainly you could install almost all Linux/Unix software on Mac very easily.

Mac OS X comes by default with ApacheWeb Server and PHP. In this tutorial we will go over steps on how to enable those on Mac.

Let’s get started:

Enable Apache Web Server

Step-1

Open terminal App and run below command:

Step-2

Open browser and check with URL: http://localhost

Download php for apache mac 2018 torrent

Enable PHP Module and verify Perl module

Step-1

Open Terminal App. Mac OS X comes by default with Perl library. Just type below commands to check Perl and PHP Setup.

Terminal Commands
2
4
6
8
10
12
14
16
18
/usr/bin/perl
bash-3.2# pwd
total120
-rw-r--r--1root wheel13077Sep92014magic
drwxr-xr-x14root wheel476Sep92014extra
-rw-r--r--1root wheel20786Sep92014httpd.conf
-rw-r--r--1root wheel20786Jun913:55httpd.conf.bak
bash-3.2# vi httpd.conf

Step-2

Open file httpd.conf file. You may use any Text Editor also.

Uncomment the following line (remove #): LoadModule php5_module libexec/apache2/libphp5.so

Step-3

Restart Apache Web Server:

Php

Step-4

  • Find DocumentRoot from httpd.conf file. In my case it’s /Users/crunchify/Documents/Blogs/MAMP as I’m using MAMP on my Mac.
  • You may have diff folder something like /Library/WebServer/Documents/.
  • Create below file crunchify-php-on-mac.php under your DocumentRoot folder.
  • If you don’t see folder Web Server then just create it 🙂
crunchify-php-on-mac.php
2
4
6
8
<head>
</head>
<?phpecho'<p>Hello World - PHP Testcase on Mac OS X by Crunchify.com...</p><br>Have a fun.. Enjoy..';?>
</html>

Download Php For Apache Mac 2018 Torrent

Step-5

Now visit this URL: http://localhost/crunchify-php-on-mac.php and you should see php file loaded successfully on browser.

How to Kill Apache httpd process on Mac?

Just incase if you need to kill apache httpd process on Mac then you could use below commands.

2
sudo launchctl unload/System/Library/LaunchDaemons/org.apache.httpd.plist

Enjoy and Happy coding…

Join the Discussion

If you liked this article, then please share it on social media or leave us your comments. Limited time 3 months free WPEngine hosting.

Other Popular Articles...