Mysql gratuito para pruebas online
Apache2
Como os he comentado Apache2 ya viene instalado en el sistema asi que solo tendremos que arrancarlo cada vez que queramos utilizarlo con el comando
sudo apachectl start
Escribimos http://localhost en el navegador y ya vemos que funciona

Para ver la versión de apache tecleamos en el terminal
httpd -v
Y veréis un resultado como este

PHP
Ya viene instalado en el sistema y lo podemos comprobar con la siguiente instrucción.
php -v

Ahora hay que activar php en apache para esto editamos el fichero de configuración de apache2
sudo vim /etc/apache2/httpd.conf
Y buscamos las siguientes lineas y si estan comentadas con una # quitamos la # para descomentar la linea
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
LoadModule php7_module libexec/apache2/libphp7.so
Y reiniciamos apache
sudo apachectl restart
Ahora vamos al directorio de trabajo de apache que se encuentra en
cd /Libarary/WebServer/Documents /
Y es donde se encuentra el fichero que hemos visto en el navegador al escribir http://localhost. Ahora creamos un nuevo fichero
sudo vim info.php
y dentro escribimos el siguiente código en php
phpinfo();
Guardamos y en el navegador escribirmos http://localhost/info.php y os tiene que salir una página como esta

Muy bien!!, ahora ya tenemos apache y php funcionando y lo que hay que hacer es definirnos nuestro propio directorio de trabajo en lugar de utilizar el que tiene por defecto apache dentro del directorio de sistema "Library". Para estoy vamos a utilizar los VirtualHosts de apache. Al directorio lo podemos llamar como queramos yo lo he llamado WebRoot
mkdir WebRoot
Y dentro creamos dos directorios para crear nuestros webs Site1 y Site2
mkdir Site1 Site2
Y dentro de cada directorio recién creado ponemos un fichero index.php con algún texto identificativo por ejemplo "Este es el Site1" y Este es el Site2".
Ahora tenemos que configurar los VirtualHosts en apache y para esto vamos al directorio /etc/apache2/extra y editamos el fichero httpd-vhosts.conf y por cada nuevo web que queramos tener pondremos este código dentro de ese fichero.
<VirtualHost *:80>
DocumentRoot "/Users/depruebas/WebRoot/Site1"
ServerName site1.local
<Directory "/Users/depruebas/WebRoot/Site1">
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Users/depruebas/WebRoot/Site2"
ServerName site2.local
<Directory "/Users/depruebas/WebRoot/Site2">
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
</VirtualHost>
Ahora tenemos que editar el fichero /etc/apache2/httpd.conf y buscar la linea Include /private/etc/apache2/extra/httpd-vhosts.conf y descomentarla si esta comentada.
Como tenemos dos Web lo ponemos dos veces y reiniciamos apache con la instrucción sudo apachectl restart ahora creamos las entradas de nuestros nuestros sites en el fichero hosts. Editamos el fichero hosts
sudo vim /etc/hosts
Y asociamos nuestra ip a el nombre de dominio que hemos dado
127.0.0.1 site1.local
127.0.0.1 site2.local
Nos tiene que quedar el fichero hosts como en la imagen.

Después de esto ya podemos probar los webs en el navegador, escribimos http://site1.local y http://site2.local y tiene que aparecer el texto que hemos puesto en los ficheros index.php

Y esto es todo, y feliz programming
Saludos
Alex.