So entfernen Sie vorinstallierten Apache und PHP von Mac OS Sierra

Ich habe versucht herauszufinden, wie ich vorinstallierten Apache und PHP vollständig von meinem Macbook Pro entfernen kann ... Der Grund ist, dass ich die Homebrew-Version von Apache und PHP verwende. Die aktuelle Version von PHP, die ich verwende, ist PHP 7, wie Sie im folgenden Screenshot sehen können

Localhost-PHP-Version

aber wenn ich php -vim Terminal verwende, zeigt es mir PHP Version 5.6 an.. siehe Screenshot unten.

Geben Sie hier die Bildbeschreibung ein

Ich versuche, das vorinstallierte PHP zu finden, kann es aber nicht finden ... Könnt ihr mir helfen und mich in die richtige Richtung weisen? Danke schön.

Der richtige Weg, um die von Apple installierten nicht zu deinstallieren, da Apple sie zurücksetzen wird. Der richtige Weg ist, den Pfad zu verwenden, um zuerst die Homebrew zu finden. Was ist dein Weg?
Mein bevorzugter Weg ist, die auf dem Mac zu ignorieren und eine VM mit nur Text FreeBSD (kein GUI-Desktop) zu beleuchten und den AMP-Stack dort zu laden.

Antworten (5)

Das Entfernen von System-macOS-Binärdateien ist keine gute Idee, sie werden während eines nächsten System-Upgrades neu installiert und könnten von einigen Systemskripten benötigt werden.

Um das Homebrew-PHP über die Befehlszeile zu aktivieren, lesen Sie die Ausgabe von brew info php70:

Wenn Sie das PHP, das Sie auf der Befehlszeile verwenden, austauschen möchten, sollten Sie Folgendes zu ~/.bashrc, ~/.zshrc, ~/.profile oder der entsprechenden Konfigurationsdatei Ihrer Shell hinzufügen: export PATH="$(brew -- Präfix homebrew/php/php70)/bin:$PATH"

Wenn Sie PHP 7.2 installiert haben, überprüfen Sie die Ausgabe von brew info php72.

Danke .... Ja, ich weiß, dass das Deinstallieren nativer Binärdateien keine gute Idee ist ... Aber ich dachte, dass es mit denen kollidiert, die ich mit Homebrew installiert habe ... Ich werde es gemäß Ihrem Vorschlag überprüfen
Es gibt keinen Konflikt. Die PATHUmgebungsvariable definiert die Priorität zwischen Binärdateien mit demselben Namen. Wenn ein Verzeichnis vor einem anderen in der platziert PATHwird, haben seine Binärdateien Vorrang.
Es ist weitaus besser, die PATH-Variable zu verwenden und zu steuern, welche Version bevorzugt wird, sie wird zuerst geladen. apple.stackexchange.com/questions/592/… gute Antwort
Genau das wird von Homebrew und dieser Antwort vorgeschlagen.

Ich habe das versucht

export PATH=/usr/local/php5/bin:$PATH

und es funktioniert, php -vzeigt mir die richtige Version, siehe https://php-osx.liip.ch/#faq

!!! Beachtenexport PATH=/usr/local/php5/bin:$PATH Sie, dass Sie Ihrer Datei etwas hinzufügen ~/.bash_profilemüssen, damit diese Änderung dauerhaft bleibt, da sie sonst beim ersten Neustart verschwindet und Sie diesen Befehl bei jedem Neustart ausführen müssen.

Exportieren Sie Ihren PATH mit etwas wie diesem (überprüfen Sie Ihre PHP-Version):

export PATH=/usr/local/Cellar/php71/7.1.14_25/bin:$PATH

Wie verbessert sich dies gegenüber anderen Antworten, von denen sie sagen, dass sie den Weg vorgeben? Bitte geben Sie in Ihrer Antwort zumindest einen gewissen Kontext an, insbesondere weil die Frage danach fragt, wie die vorinstallierte Version entfernt werden kann, und Ihre Antwort eigentlich etwas anderes ist.

Als Erweiterung der Antwort von @Lokni, um die PHP-Version von 'whatever homebrew installed' anstelle von zu verwenden /usr/bin/php, habe ich dies als erste Zeile meines ~/.bash_profile(oder ~/.zprofileauf einigen Macs) hinzugefügt:

export PATH="$(brew --prefix php)/bin:$PATH"

In meinem Fall brew --prefix phpRetouren

/usr/local/opt/php

Wenn ich also jetzt ein neues Terminal öffne und eintippe which php, heißt es

/usr/local/opt/php/bin/php

export PATH=/usr/local/Cellar/php/7.3.9_1/bin:$PATH

Wie verbessert sich dies gegenüber anderen Antworten, von denen sie sagen, dass sie den Weg vorgeben? Bitte geben Sie in Ihrer Antwort zumindest einen gewissen Kontext an, insbesondere weil die Frage danach fragt, wie die vorinstallierte Version entfernt werden kann, und Ihre Antwort eigentlich etwas anderes ist.