Quick-Fix für AMP-Stack unter macOS Sierra (10.12)

Dieser Artikel ist keine Standalone-Anleitung zum Einrichten eines AMP-Stacks unter macOS 10.12 (Sierra), sondern eine Ergänzung zum originalen AMP-Stack-Artikel. Voraussetzung ist also, dass du bereits einen funktionsfähigen AMP-Stack eingerichtet hattest, so wie im Original-Artikel beschrieben! 


Wie zu erwarten, läuft nach einem Update auf macOS Sierra – genauso wie bei früheren Systemupdates – unser AMP-Stack erstmal nicht mehr. Aber kein Grund zur Panik:

Apache

Das Systemupdate ersetzt unser Apache-Konfigurations-File (httpd.conf) durch eine neue Default-Konfiguration. Freundlicherweise löscht das Update unsere alte httpd.conf nicht, sondern benennt sie um in httpd.conf~previous. Beide Files (das neue Default-File und unser altes Custom-File) liegen in /private/etc/apache2/

Wir müssen also nur die gemachten Änderungen ins neue File übernehmen:

  1. Von beiden Files Sicherungskopien an einem anderen Ort anlegen.
  2. Beide Files1 im Texteditor öffnen und mittels der Diff-Funktion des Texteditors die Unterschiede feststellen. Falls dein Texteditor über keine Diff-Funktion verfügt, dann die Unterschiede bitte mittels eines externen Diff-Tools feststellen.
  3. Nun die bei der Erst-Einrichtung des AMP-Stacks gemachten Änderungen aus httpd.conf~previous ins neue httpd.conf übertragen. Nicht pauschal alle Änderungen übernehmen, sondern nur jene, die du bei der ersten Einrichtung im httpd.conf gemacht hattest.2
  4. File sichern.
  5. Analog vorgehen mit dem File httpd-userdir.conf, welches sich in /private/etc/apache2/extra befindet. Auch hier findest du dein altes File als httpd-userdir.conf~previous.
    Die einzige Änderung, die hier anfallen sollte, ist das Entkommentieren der Zeile Include /private/etc/apache2/users/*.conf.3
  6. Apache neustarten mit sudo apachectl restart
  7. Wahrscheinlich läuft jetzt bereits alles wieder. Wenn Nicht, dann weiter mit …

MySQL

Um MySQL wieder korrekt zum Laufen zu bekommen, müssen eventuell ein paar Dinge aus der Erst-Einrichtung nochmals durchgeführt werden (für Details, siehe bitte den Hauptartikel):

  1. sudo mkdir /var/mysql
  2. sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
  3. MySQL beenden mit launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  4. Activity Monitor öffnen und ckecken ob noch ein weiterer mysqld-Prozess läuft, ggf. beenden.
  5. MySQL neustarten mit launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Der AMP-Stack sollte jetzt wieder funktionieren!

Footnotes

  1. Also /private/etc/apache2/httpd.conf und /private/etc/apache2/httpd.conf~previous
  2. Ansonsten würden alle Neuerungen, die im neuen 10.12-httpd.conf systembedingt eventuell eingeführt wurden, überschrieben werden.
  3. Diese Zeile sorgt für die Aktivierung des Files /private/etc/apache2/users/[username].conf, das du bei der Erstinstallierung angelegt hattest.