- pierwsza część wieloczęściowej serii blogów dla programistów Mac
- instalacja Homebrew
- Big Sur wymagane biblioteki
- instalacja Apache
- Wskazówki dotyczące rozwiązywania problemów
- Visual Studio Code
- Konfiguracja Apache
- użytkownik& Grupa
- Nazwa serwera
- katalog stron
- Rozwiązywanie problemów Usługi httpd inne niż Sudo Start
- instalacja PHP
- konfiguracja PHP Apache – Część 1
- sprawdzanie poprawności instalacji PHP
- PHP Switcher Script
- Sprawdź swoją ścieżkę
- testowanie przełączania PHP
- Rozwiązywanie problemów z przełączaniem PHP
- Przetestuj swoją konfigurację z Grav CMS!
- aktualizacja PHP i innych pakietów Brew
- Aktywacja konkretnych/najnowszych wersji PHP
pierwsza część wieloczęściowej serii blogów dla programistów Mac
Część 1: macOS 11.0 Big Sur web development environment
Tworzenie aplikacji internetowych na MacOS to prawdziwa radość. Istnieje wiele opcji konfiguracji środowisk programistycznych, w tym zawsze popularny MAMP Pro, który zapewnia ładny interfejs użytkownika na Apache, PHP i MySQL. Jednak czasami MAMP Pro ma spowolnione lub nieaktualne wersje lub po prostu zachowuje się źle ze względu na restrykcyjny system szablonów konfiguracji i niestandardowych kompilacji.
w takich chwilach ludzie często szukają alternatywnego podejścia.na szczęście istnieje takie, które jest stosunkowo proste w konfiguracji.
w tym poście na blogu przeprowadzimy Cię przez konfigurację i konfigurację Apache 2.4 i wiele wersji PHP. W drugim poście na blogu w tej serii dwóch postów omówimy MySQL, wirtualne hosty Apache, buforowanie APC i instalację Xdebug.
27/11/2019 zaktualizowano, aby dodać informacje o PHP 8.0
13/11/2020 zaktualizowano, aby odzwierciedlić wydanie macOS 11.0 Big Sur
12/02/2019 zaktualizowano, aby odzwierciedlić najnowszą wersję PHP 7.4 i usunięcie PHP 7.1 z oficjalnego tap
12/02/2019 zaktualizowano, aby odzwierciedlić najnowszą wersję PHP 7.4 i usunięcie PHP 7.1 z oficjalnego tap 7.1 z oficjalnego Tap
10/08/2019 zaktualizowano, aby odzwierciedlić wydanie macOS 10.5 Catalina
01/10/2019 zaktualizowano, aby dodać PHP 5.6 i PHP 7.0 z i zewnętrznych przestarzałych keg
12/12/2018 zaktualizowano, aby odzwierciedlić najnowszą wersję PHP 7.3 i usunięcie PHP 7.0 z Brew.
Jeśli w przeszłości postępowałeś zgodnie z tym przewodnikiem za pomocąHomebrew/php
dotknij i chcesz uaktualnić do nowegoHomebrew/core
, powinieneś najpierw wyczyścić bieżącą instalację, postępując zgodnie z naszym nowym uaktualnieniem Homebrew.
Ten przewodnik jest przeznaczony dla doświadczonych programistów internetowych. Jeśli jesteś początkującym programistą, będziesz lepiej obsługiwany za pomocą MAMP lub MAMP Pro.
Jeśli nie masz jeszcze zainstalowanego XCode, najlepiej najpierw zainstalować narzędzia wiersza poleceń, ponieważ będą one używane przez homebrew:
xcode-select --install
instalacja Homebrew
ten proces w dużej mierze opiera się na menedżerze pakietów macOS o nazwie Homebrew. Za pomocą poleceniabrew
możesz łatwo dodać potężne funkcje do komputera mac, ale najpierw musimy go zainstalować. Jest to prosty proces, ale musisz uruchomić aplikację Terminal (/Applications/Utilities/Terminal
), a następnie wprowadzić:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Po prostu postępuj zgodnie z monitami terminala i wprowadź hasło, jeśli jest to wymagane. Może to potrwać kilka minut, ale po zakończeniu, szybki sposób, aby upewnić się, że poprawnie zainstalowałeś brew
, po prostu wpisz:
brew --version
Homebrew 2.5.10Homebrew/homebrew-core (git revision 542ff0; last commit 2020-11-13)
prawdopodobnie powinieneś również uruchomić następujące polecenie, aby upewnić się, że wszystko jest poprawnie skonfigurowane:
brew doctor
poinstruuje cię, jeśli musisz coś poprawić.
Big Sur wymagane biblioteki
podczas instalacji fresh na Big Sur natknąłem się na kilka bibliotek, których brakowało podczas wykonywania wszystkich poniższych kroków. Aby ułatwić sprawę, po prostu uruchom to teraz:
brew install openssl
instalacja Apache
a najnowszy macOS 11.0 Big Sur pochodzi z preinstalowanym Apache 2.4, jednak używanie tej wersji z Homebrew nie jest już prostym zadaniem, ponieważ Apple usunęło niektóre wymagane skrypty w tym wydaniu. Jednak rozwiązaniem jest zainstalowanie Apache 2.4 przez Homebrew, a następnie skonfigurowanie go do działania na standardowych portach (80/443).
Jeśli masz już wbudowany Apache uruchomiony, będzie musiał zostać najpierw zamknięty, a wszelkie Skrypty automatycznego ładowania usunięte. Nie zaszkodzi po prostu uruchomić wszystkie te polecenia w kolejności – nawet jeśli jest to świeża instalacja:
sudo apachectl stopsudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null
teraz musimy zainstalować nową wersję dostarczoną przez Brew:
brew install httpd
bez opcji, httpd
nie trzeba budować ze źródła, więc instaluje się dość szybko. Po zakończeniu powinieneś zobaczyć komunikat taki jak:
🍺 /usr/local/Cellar/httpd/2.4.46: 1,658 files, 27.9MB
teraz musimy tylko skonfigurować rzeczy tak, aby nasz nowy serwer Apache był automatycznie uruchamiany
brew services start httpd
masz teraz zainstalowany Apache Homebrew i skonfigurowałeś go tak, aby automatycznie uruchamiał się z kontem uprzywilejowanym. Powinien już być uruchomiony, więc możesz spróbować dotrzeć do serwera w przeglądarce, wskazując go na http://localhost:8080
, powinieneś zobaczyć prosty nagłówek z napisem „To działa!”.
Wskazówki dotyczące rozwiązywania problemów
Jeśli pojawi się komunikat, że przeglądarka nie może połączyć się z serwerem, najpierw sprawdź, czy serwer działa.
ps -aef | grep httpd
Jeśli Apache jest uruchomiony, powinieneś zobaczyć kilka procesów httpd.
spróbuj ponownie uruchomić Apache za pomocą:
brew services restart httpd
możesz oglądać dziennik błędów Apache w nowej karcie/oknie terminala podczas restartu, aby sprawdzić, czy coś jest nieprawidłowe lub powoduje problem:
tail -f /usr/local/var/log/httpd/error_log
Apache jest kontrolowany za pomocą poleceniabrew services
, więc niektóre przydatne polecenia to:
$ brew services stop httpd$ brew services start httpd$ brew services restart httpd
Visual Studio Code
w poprzednich przewodnikach zawsze podawałem instrukcje edycji plików za pomocą domyślnegoTextEdit
aplikacja, która jest wstępnie zainstalowana. Jednak sam tego nie używam, ponieważ jest to okropny edytor i testując mój przewodnik dla Big Sur, ciągle napotykałem problemy z kodowaniem, znajdowaniem numerów linii itp. Lepszym rozwiązaniem jest po prostu zainstalowanie lepszego edytora. Więc proszę zainstalować niezwykle wszechstronny jeszcze, 100% darmowy, Visual Studio Code. Jest on dostępny na Mac, Windows i Linux, ale w tej chwili dbamy tylko o wersję mac.
przejdź do witryny Visual Studio Code i kliknij Pobierz dla komputerów Mac
Po pobraniu przeciągnij aplikację do preferowanej lokalizacji aplikacji. Następnie chcesz zainstalować narzędzia wiersza poleceń, więc postępuj zgodnie z oficjalnymi instrukcjami krok po kroku, aby móc użyć poleceniacode
z terminala.
Konfiguracja Apache
teraz, gdy mamy działający serwer WWW, będziemy chcieli zrobić kilka zmian konfiguracyjnych, aby działał lepiej jako lokalny serwer programistyczny.
w najnowszej wersji Brew musisz ręcznie ustawić port nasłuchiwania z domyślnego8080
na80
, więc będziemy musieli edytować plik konfiguracyjny Apache/usr/local/etc/httpd/httpd.conf
.
jeśli postępujesz zgodnie z powyższymi instrukcjami, powinieneś być w stanie użyć kodu Visual Studio do edycji plików za pomocą polecenia terminalacode
. Jeśli jednak chcesz użyć domyślnej aplikacji TextEditor do dokonywania zmian, możesz użyć poleceniaopen -e
, po którym następuje ścieżka do pliku.
code /usr/local/etc/httpd/httpd.conf
znajdź linię, która mówi
Listen 8080
i zmień ją na80
:
Listen 80
następnie skonfigurujemy go tak, aby używał do zmiany katalogu głównego dokumentu dla Apache. To jest folder, z którego Apache szuka pliku. Domyślnie katalog główny dokumentu jest skonfigurowany jako /usr/local/var/www
. Ponieważ jest to maszyna programistyczna, Załóżmy, że chcemy zmienić główny katalog dokumentu, aby wskazywał na folder w naszym własnym katalogu domowym.
wyszukaj termin DocumentRoot
I powinieneś zobaczyć następującą linię:
DocumentRoot "/usr/local/var/www"
Zmień to, aby wskazać katalog użytkownika, w którym your_user
jest nazwą Twojego konta użytkownika:
DocumentRoot /Users/your_user/Sites
musisz również zmienić <Directory>
odniesienie do tagu tuż pod wierszem DocumentRoot. Należy to również zmienić, aby wskazywać na nowy katalog główny dokumentu:
<Directory "/Users/your_user/Sites">
usunęliśmy opcjonalne cudzysłowy wokół ścieżek katalogów, ponieważ TextEdit prawdopodobnie spróbuje przekonwertować je na inteligentne cudzysłowy, co spowoduje błąd składni podczas próby ponownego uruchomienia Apache. Nawet jeśli edytujesz wokół cudzysłowów i zostawiasz je tam, gdzie są, zapisanie dokumentu może spowodować ich konwersję i spowodować błąd.
w tym samym bloku<Directory>
znajdzieszAllowOverride
ustawienie, które należy zmienić w następujący sposób:
## AllowOverride controls what directives may be placed in .htaccess files.# It can be "All", "None", or any combination of the keywords:# AllowOverride FileInfo AuthConfig Limit#AllowOverride All
również powinniśmy teraz włączyć mod_rewrite, które jest domyślnie komentowane. Wyszukajmod_rewrite.so
I odkomentuj linię, usuwając wiodącą#
, naciskając⌘
/
w linii (jest to szybki sposób na odkomentowanie i skomentowanie jednej lub wielu linii:
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
użytkownik& Grupa
teraz mamy konfigurację Apache wskazującą naSites
folder w naszym katalogu domowym. Jednak nadal istnieje jeden problem. Domyślnie apache działa jako użytkownik daemon
I grupa daemon
. Spowoduje to problemy z uprawnieniami podczas próby dostępu do plików w naszym katalogu domowym. Około jednej trzeciej drogi w dółhttpd.conf
istnieją dwa ustawienia, aby ustawićUser
IGroup
Apache będzie działał pod. Zmień je, aby pasowały do Twojego konta użytkownika (zamień your_user
z Twoją prawdziwą nazwą użytkownika), z grupą staff
:
User your_userGroup staff
Nazwa serwera
Apache lubi mieć nazwę serwera w konfiguracji, ale jest domyślnie wyłączona, więc wyszukaj:
#ServerName www.example.com:8080
i zastąp ją:
ServerName localhost
katalog stron
teraz musisz utworzyć Sites
folder w katalogu głównym katalogu domowego. Możesz to zrobić w swoim terminalu lub w Finderze. W tym nowym folderze Sites
Utwórz prosty index.html
i umieść w nim jakąś fałszywą zawartość, taką jak: <h1>My User Web Root</h1>
.
mkdir ~/Sitesecho "<h1>My User Web Root</h1>" > ~/Sites/index.html
Uruchom ponownie apache, aby upewnić się, że zmiany konfiguracji zostały wprowadzone:
brew services stop httpdbrew services start httpd
Jeśli podczas restartu Apache pojawi się błąd, spróbuj usunąć cudzysłowy wokół katalogu DocumentRoot i nazw katalogów, które wcześniej skonfigurowaliśmy.
skierowanie przeglądarki nahttp://localhost
powinno wyświetlić nową wiadomość. Jeśli to działa, możemy iść dalej!
zapewnia usunięcie portu:8080
, którego użyliśmy wcześniej. Ponadto może być konieczne Shift
Reload
, aby wyczyścić pamięć podręczną przeglądarki i pobrać nowy plik.
Rozwiązywanie problemów Usługi httpd inne niż Sudo Start
zaktualizuję tę sekcję o więcej wskazówek i rzeczy do wypróbowania, gdy znajdę rozwiązania typowych problemów. Wskocz na nasz # macos Discord Chat, aby uzyskać pomoc „na żywo”.
w tym roku, z macOS Big Sur, przełączyłem się z używania sudo
, aby uruchomić httpd
z rootem (mimo że działał jako użytkownik/grupa zdefiniowana w httpd.conf
), a dla osób, które zaktualizowały tę wersję do tej, wystąpiły problemy.
sam natknąłem się na pewne problemy, ale udało mi się to całkiem łatwo uruchomić, ale inni zgłaszali bardziej rozpowszechnione problemy. Spróbuj wykonać te kroki, jeśli Apache nie uruchamia się, gdy używasz brew services start httpd
.
najpierw spróbuj uruchomić apache bezpośrednio z:
/usr/local/bin/httpd -k start
to omija polecenie brew services i często wypisuje konkretne problemy. Jeśli masz problemy z zapisywaniem plików dziennika, spróbuj usunąć wszystkie bieżące pliki dziennika httpd:
rm -Rf /usr/local/var/log/httpd/*
, a następnie spróbuj uruchomić ponownie.
Jeśli widzisz komunikat o czymś takim jakAddress already in use: AH00072: make_sock: could not bind to address
, spróbuj zmienićListen
config w httpd.conf
na:
Listen 0.0.0.0:80
instalacja PHP
Jeśli masz istniejące instalacje PHP za pośrednictwem Brew, musisz najpierw wyczyścić swoją konfigurację za pomocą naszego Przewodnika aktualizacji Homebrew, zanim przejdziesz do tej sekcji.
do końca marca 2018 r.wszystkie Browary związane z PHP były obsługiwane przez zakładkęHomebrew/php
, ale została ona przestarzała, więc teraz używamy tego, co jest dostępne w pakiecieHomebrew/core
. Powinien to być lepiej utrzymany, ale znacznie mniej kompletny zestaw pakietów.
PHP 5.6, PHP 7.0 i PHP 7.1 zostały przestarzałe i usunięte z Brew, ponieważ nie mają wsparcia i chociaż nie są zalecane do produkcji, istnieją uzasadnione powody, aby testować te nieobsługiwane wersje w środowisku programistycznym. Aby korzystać z najnowszych wersji icu4c
I openssl
.
pamiętaj tylko PHP od 7.2 do 7.4 są oficjalnie wspierane przez Brew, ale te również muszą być budowane, co jest dość powolne. Dla najnowszej wersji naszego przewodnika użyjemy nowego tap z @shivammahtur, ponieważ istnieje wiele wersji (w tym PHP 8.0 builds) wstępnie zbudowanych.
PHP 8.0 został właśnie wydany i możesz go zainstalować, ale może to zająć trochę czasu, ponieważ kompatybilne moduły PHP są w pełni dostępne.
brew tap shivammathur/php
będziemy kontynuować instalując różne wersje PHP i używając prostego skryptu, aby przełączać się między nimi w razie potrzeby. Możesz wykluczyć wszystkie wersje, których nie chcesz instalować.
brew install shivammathur/php/[email protected] install shivammathur/php/[email protected] install shivammathur/php/[email protected] install shivammathur/php/[email protected] install shivammathur/php/[email protected] install shivammathur/php/[email protected] install shivammathur/php/[email protected]
ponadto możesz mieć potrzebę dostosowania ustawień konfiguracyjnych PHP do swoich potrzeb. Częstą rzeczą do zmiany jest ustawienie pamięci lub Konfiguracja date.timezone
. Plikiphp.ini
dla każdej wersji PHP znajdują się w następujących katalogach:
/usr/local/etc/php/5.6/php.ini/usr/local/etc/php/7.0/php.ini/usr/local/etc/php/7.1/php.ini/usr/local/etc/php/7.2/php.ini/usr/local/etc/php/7.3/php.ini/usr/local/etc/php/7.4/php.ini/usr/local/etc/php/8.0/php.ini
w tym momencie zdecydowanie zalecam zamknięcie wszystkich kart terminala i okien. Oznacza to otwarcie nowego terminala, aby kontynuować następny krok. Jest to zdecydowanie zalecane, ponieważ w przypadku istniejących terminali mogą pojawić się naprawdę dziwne problemy ze ścieżką (zaufaj mi, widziałem to!).
zainstalowaliśmy, ale nie linkowaliśmy tych wersji PHP. Aby przełączyć się na PHP 5.6
na przykład możemy wpisać:
brew unlink php && brew link --overwrite --force [email protected]
szybki test, czy jesteśmy w poprawnej wersji:
php -v
PHP 5.6.40 (cli) (built: Jul 2 2020 04:41:54) Copyright (c) 1997-2016 The PHP GroupZend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
i przełączyć się na 7.4
:
brew unlink php && brew link --overwrite --force [email protected]
i sprawdź, czy zostało poprawnie zmienione:
php -v
PHP 7.4.12 (cli) (built: Oct 30 2020 00:56:27) ( NTS )Copyright (c) The PHP GroupZend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.12, Copyright (c), by Zend Technologies
konfiguracja PHP Apache – Część 1
pomyślnie zainstalowałeś swoje wersje PHP, ale musimy powiedzieć Apache ’ owi, aby z nich korzystał. Ponownie będziesz musiał edytować plik/usr/local/etc/httpd/httpd.conf
przewiń na dół wpisówLoadModule
.
jeśli poprawnie postępujesz zgodnie z tym przewodnikiem, ostatnim wpisem powinien być twójmod_rewrite
moduł:
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
Poniżej dodaj następujące moduły libphp
:
LoadModule php5_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp5.so#LoadModule php7_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp7.so#LoadModule php7_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp7.so#LoadModule php7_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp7.so#LoadModule php7_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp7.so#LoadModule php7_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp7.so#LoadModule php_module /usr/local/opt/[email protected]/lib/httpd/modules/libphp.so
możemy mieć tylko jeden moduł przetwarzający PHP na raz, więc na razie zostawiliśmy nasz [email protected]
wpis skomentowany, podczas gdy wszystkie pozostałe są komentowane. Spowoduje to, że Apache będzie używał PHP 5.6 do obsługi żądań PHP. (Dodamy później możliwość przełączania wersji PHP).
musisz również wyraźnie ustawić indeksy katalogów dla PHP, więc wyszukaj ten blok:
<IfModule dir_module> DirectoryIndex index.html</IfModule>
i zastąp go tym:
<IfModule dir_module> DirectoryIndex index.php index.html</IfModule><FilesMatch \.php$> SetHandler application/x-httpd-php</FilesMatch>
Zapisz plik i zatrzymaj Apache, a następnie uruchom ponownie, teraz, gdy zainstalowaliśmy PHP:
brew services stop httpdbrew services start httpd
sprawdzanie poprawności instalacji PHP
najlepszym sposobem sprawdzenia, czy PHP jest zainstalowane i uruchomione zgodnie z oczekiwaniami, jest użycie phpinfo(). Nie jest to coś, co chcesz pozostawić na maszynie produkcyjnej, ale jest to nieocenione w środowisku programistycznym.
Po prostu utwórz plik o nazwieinfo.php
w folderzeSites/
, który utworzyłeś wcześniej za pomocą tej jednej linijki.
echo "<?php phpinfo();" > ~/Sites/info.php
skieruj przeglądarkę nahttp://localhost/info.php
I powinieneś zobaczyć błyszczącą stronę informacyjną PHP:
Jeśli widzisz podobny wynik phpinfo, gratulacje! Teraz Apache i PHP działają pomyślnie. Możesz przetestować inne wersje PHP, komentując wpisLoadModule ... [email protected] ...
I komentując jeden z pozostałych. Następnie po prostu uruchom ponownie apache i przeładuj tę samą stronę.
PHP Switcher Script
mamy zakodowany Apache do użycia PHP 5.6, ale naprawdę chcemy być w stanie przełączać się między wersjami. Na szczęście niektóre pracowite osoby wykonały już za nas ciężką pracę i napisały bardzo poręczny skrypt PHP switcher.
Tensphp
skrypt został zaktualizowany do obsługi PHP 8.0. Jeśli chcesz użyć tej wersji, powtórz proces poniżej, aby uzyskać najnowszą wersję.
zainstalujemy sphp
skrypt w standardzie brew /usr/local/bin
:
curl -L https://gist.githubusercontent.com/rhukster/f4c04f1bf59e0b74e335ee5d186a98e2/raw/0c36a5067fbd63e6a36700a6aaa119df0836bdfc/sphp.sh > /usr/local/bin/sphpchmod +x /usr/local/bin/sphp
Sprawdź swoją ścieżkę
Homebrew powinien dodać swój preferowany /usr/local/bin
I /usr/local/sbin
do ścieżki w ramach procesu instalacji. Szybko przetestuj to wpisując:
echo $PATH/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
jeśli tego nie widzisz, najpierw spróbuj zamknąć terminal i ponownie go uruchomić. Jeśli to nie zadziała, sprawdź, czy masz /usr/local/bin
przed /usr/bin
I /usr/local/sbin
przed /usr/sbin
w definicji ścieżki ~/.zshrc
plik. Możesz to zrobić tymczasowo w powłoce wpisując:
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
testowanie przełączania PHP
Po wykonaniu tych kroków powinieneś być w stanie przełączyć wersję PHP za pomocą poleceniasphp
, po którym następuje dwucyfrowa wartość dla wersji PHP:
sphp 7.1
prawdopodobnie będzie musiał wprowadzić hasło administratora, a powinno dać ci kilka opinii:
Switching to [email protected]
Switching to [email protected] your shellUnlinking /usr/local/Cellar/[email protected]/5.6.40... 0 symlinks removedUnlinking /usr/local/Cellar/[email protected]/7.1.33... 0 symlinks removedUnlinking /usr/local/Cellar/[email protected]/7.2.34... 0 symlinks removedUnlinking /usr/local/Cellar/php/7.4.12... 24 symlinks removedLinking /usr/local/Cellar/php/7.4.12... 24 symlinks createdSwitching your apache confRestarting apachePHP 7.4.12 (cli) (built: Oct 30 2020 00:56:27) ( NTS )Copyright (c) The PHP GroupZend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.12, Copyright (c), by Zend TechnologiesAll done!
przetestuj, aby sprawdzić, czy twój Apache działa teraz w PHP 7.4, ponownie wskazując przeglądarkę nahttp://localhost/info.php
. Przy odrobinie szczęścia powinieneś zobaczyć coś takiego:
Rozwiązywanie problemów z przełączaniem PHP
Jeśli zaktualizowałeś poprzednią wersję tego przewodnika i zainstalowałeś PHP8, możesz zobaczyć komunikat taki jak: Unknown version of PHP. PHP Switcher can only handle arguments of: 5.6,7.0,7.1,7.2,7.3,7.4
, następnie musisz ponownie zainstalować sphp
skrypt, który został zaktualizowany.
Jeśli otrzymasz wiadomość o kolidujących wersjach PHP, to prawdopodobnie masz konflikt taps. Będziesz musiał odinstalować poprzednie wersje PHP, następnie usunąć stary kran, następnie dodać nowy kran, a następnie ponownie zainstalować wersje PHP przy użyciu powyższej składni. Na przykład:
brew untap exolnet/deprecatedbrew tap shivammathur/phpbrew install shivammathur/php/[email protected]
Przetestuj swoją konfigurację z Grav CMS!
czy jest lepszy sposób na przetestowanie nowej potężnej konfiguracji niż Szybka instalacja i testowanie grava. Najlepszy płaski CMS na świecie! Możemy to zrobić za pomocą kilku szybkich poleceń terminala:
cd ~/Sitescurl -OJL https://getgrav.org/download/core/grav-admin/latest
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0100 646 100 646 0 0 1664 0 --:--:-- --:--:-- --:--:-- 1664100 10.5M 100 10.5M 0 0 8198k 0 0:00:01 0:00:01 --:--:-- 21.6Mcurl: Saved to filename 'grav-admin-v1.6.28.zip'
następnie po prostu rozpakuj plik zip:
unzip grav-admin-v1.6.28.zip
spowoduje to rozpakowanie zip do folderu~/Sites/grav-admin
. Następnie po prostu skieruj przeglądarkę na ten katalog http://localhost/grav-admin
:
wypełnij odpowiednie informacje, aby utworzyć nowego użytkownika administratora, i po prostu kliknij Utwórz użytkownika, aby dostać się do administratora. Żadne inne kroki nie są potrzebne.
wszystko gotowe!!!!
aktualizacja PHP i innych pakietów Brew
Brew sprawia, że bardzo łatwo jest zaktualizować PHP i inne pakiety, które instalujesz. Pierwszym krokiem jest zaktualizowanie Brew, aby uzyskać listę dostępnych aktualizacji:
brew update
spowoduje to wyplucie listy dostępnych aktualizacji i usuniętych formuł. Aby uaktualnić Pakiety wystarczy wpisać:
brew upgrade
będziesz musiał przełączyć się na każdą z zainstalowanych wersji PHP i ponownie uruchomić update, aby uzyskać aktualizacje dla każdej wersji PHP i upewnić się, że używasz wersji PHP, którą zamierzasz.
Aktywacja konkretnych/najnowszych wersji PHP
ze względu na sposób konfigurowania linkowania PHP, tylko jedna wersja PHP jest połączona naraz, tylko aktualna aktywna wersja PHP zostanie zaktualizowana do najnowszej wersji. Możesz zobaczyć aktualną aktywną wersję, wpisując:
php -v
i możesz zobaczyć konkretne wersje pakietu PHP, wpisując:
brew info [email protected]
PHP 7.4.12 (cli) (built: Oct 30 2020 00:56:27) ( NTS )Copyright (c) The PHP GroupZend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.12, Copyright (c), by Zend Technologiesrhuk@macos-big-sur ~ % brew info [email protected]: stable 7.4.12 (bottled), HEADGeneral-purpose scripting languagehttps://www.php.net//usr/local/Cellar/php/7.4.12 (497 files, 72.2MB) * Poured from bottle on 2020-11-13 at 11:57:43From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/php.rbLicense: PHP-3.01==> DependenciesBuild: httpd ✔, pkg-config ✔Required: apr ✔, apr-util ✔, argon2 ✔, aspell ✔, autoconf ✔, curl-openssl ✔, freetds ✔, gd ✔, gettext ✔, glib ✔, gmp ✔, icu4c ✔, krb5 ✔, libffi ✔, libpq ✔, libsodium ✔, libzip ✔, oniguruma ✔, openldap ✔, [email protected] ✔, pcre2 ✔, sqlite ✔, tidy-html5 ✔, unixodbc ✔...
ok, to kończy Część 1 tej serii 3 części masz teraz w pełni funkcjonalny Apache 2.4 instalacja z szybkim i łatwym sposobem przełączania między PHP 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, i 8.0. Sprawdź część 2, aby dowiedzieć się, jak skonfigurować środowisko za pomocą MySQL, wirtualnych hostów, buforowania APC, YAML i Xdebug. Zapoznaj się również z częścią 3, aby dowiedzieć się, jak skonfigurować SSL dla wirtualnych hostów Apache.