Create current user vhost file into home directory
cd ~
mkdir www
cd /etc/apache2/users
sudo nano username.conf
Edit username.conf file
Include /Users/username/vhosts.conf
sudo chmod 644 username.conf
cd /etc/apache2
sudo cp httpd.conf httpd.conf.bak
sudo nano httpd.conf
Edit httpd.conf file
#ServerName www.example.com
ServerName localhost
# modules
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
Include /private/etc/apache2/extra/httpd-userdir.conf
Include /private/etc/apache2/extra/httpd-vhosts.conf
Make a copy of http-userdir.conf file before modify
cd /etc/apache2/extra
sudo cp httpd-userdir.conf httpd-userdir.conf.bak
sudo nano httpd-userdir.conf
Edit httpd-userdir.conf file
# Settings for user home directories
#
# Required module: mod_authz_core, mod_authz_host, mod_userdir
#
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received. Note that you must also set
# the default access control for these directories, as in the example below.
#
UserDir www
#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
<IfModule bonjour_module>
RegisterUserSite customized-users
</IfModule>
# load users apache configuration
Include /private/etc/apache2/users/*.conf
Restart apache/Reaload config
sudo apachectl -k restart
vhost file example
<Directory "/Users/username/workspaces/www">
AllowOverride All
Require all granted
FallbackResource /index.php
Options Indexes MultiViews FollowSymLinks
</Directory>
<VirtualHost *:80>
ServerName mydomain.loc
DocumentRoot "/Users/username/workspaces/www/myproject/wordpress/dist"
# ErrorLog "/Users/matthieu/www/apache-error.log"
# CustomLog "/Users/matthieu/www/apache-access.log" common
</VirtualHost>