I don’t suppose there’s any way to prevent macOS updates stomping on my local website every time? After doing an OS update, I have to do some magical incantations in Terminal to get my localhost (dejal.local) site working again. I use this for local testing of website changes before pushing to my production server.
If interested, here is my spellbook to re-enable the local website and PHP, based on instructions I found on the web; presumably I could script this in some way, but I’m not confident enough with scripting or messing with these files to try that:
% sudo nano /etc/apache2/httpd.conf
Uncomment these:
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 rewrite_module libexec/apache2/mod_rewrite.so
LoadModule php7_module libexec/apache2/libphp7.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
% sudo nano /etc/hosts
Make sure this is still there (typically fine after an OS update):
#Local sites
127.0.0.1 dejal.local
% sudo nano /etc/apache2/extra/httpd-userdir.conf
Uncomment to be like this:
Include /private/etc/apache2/users/*.conf
<IfModule bonjour_module>
RegisterUserSite customized-users
</IfModule>
% sudo nano /etc/apache2/users/dejal.conf
Should be like this (typically fine after an OS update):
<Directory "/Users/dejal/Sites/">
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
% sudo nano /etc/apache2/extra/httpd-vhosts.conf
Change to this:
#Virtual Host Entry for dejal.local
<VirtualHost *:80>
DocumentRoot "/Users/dejal/Sites/dejal"
ServerName dejal.local
ErrorLog "/private/var/log/apache2/dejal-error_log"
CustomLog "/private/var/log/apache2/dejal-access_log" common
</VirtualHost>
% sudo apachectl restart