A Dockerre való áttérés ajánlása
Végre áttértem a Docker használatára a helyi fejlesztéshez macOS-en. Míg a következő bemutató a macOS Mojave esetében működik, a macOS későbbi verzióinál nem fog. Javaslom, hogy kövesse a legújabb bemutatómat az Apache, MySQL és PHP telepítéséről macOS-en a Docker használatával.
Megjegyzés: Ez a bejegyzés új telepítésekre vonatkozik. Ha már telepítette az Apache-ot, a PHP-t és a MySQL-t Mac OS Sierra-ra, olvassa el az Apache, PHP és MySQL frissítése macOS Mojave-re című bejegyzésemet.
Tudom, hogy a macOS-re elérhető webszerver szoftverek, nevezetesen a MAMP, valamint az olyan csomagkezelők, mint a brew
. Ezekkel gyorsan el lehet kezdeni. De lemondanak a tanulási tapasztalatról, és ahogy a legtöbb fejlesztő beszámol róla, nehezen kezelhetővé válhatnak.
A macOS a UNIX tetején fut. Így a legtöbb UNIX szoftver könnyen telepíthető a macOS-re. Ráadásul az Apache és a PHP előre telepítve érkezik a macOS-hez. Egy helyi webszerver létrehozásához csak az Apache konfigurálására és a MySQL telepítésére van szükség.
Parancsok futtatása
Először is nyissa meg a Terminal alkalmazást, és váltson át a root
felhasználóra, hogy engedélyezési problémák nélkül futtathassa az ebben a bejegyzésben szereplő parancsokat:
sudo su -
Enable Apache on macOS
apachectl start
Verify It works! a http://localhost
Enable PHP for Apache
Először is készítsen biztonsági mentést az alapértelmezett Apache konfigurációról. Ez jó gyakorlat, és összehasonlításként szolgál a macOS jövőbeli verzióival szemben.
cd /etc/apache2/cp httpd.conf httpd.conf.mojave
Most szerkessze az Apache konfigurációt. Nyugodtan használjon más szerkesztőt, ha nem ismeri a vi-t.
vi httpd.conf
Mondja ki a következő sort (távolítsa el a #
-t):
LoadModule php7_module libexec/apache2/libphp7.so
Újraindítsa az Apache-t:
apachectl restart
A PHP engedélyezését ellenőrizheti egy phpinfo()
oldal létrehozásával a DocumentRoot
-ban.
A macOS Mojave alapértelmezett DocumentRoot
-ja /Library/WebServer/Documents
. Ezt az Apache konfigurációjából ellenőrizheti.
grep DocumentRoot httpd.conf
Ezután hozza létre a phpinfo()
oldalt a DocumentRoot
-ban:
echo '<?php phpinfo();' > /Library/WebServer/Documents/phpinfo.php
A PHP-t a http://localhost/phpinfo.php
Install MySQL on macOS Mojave
Töltse le és telepítse a legújabb MySQL általánosan elérhető kiadás DMG-t a macOS számára. Bár a MySQL 8 a legújabb verzió, sok projektem még mindig a MySQL 5.7-et használja. Ezért én még mindig a régebbi verzió telepítését részesítem előnyben.
A telepítés befejezésekor egy ideiglenes jelszót fog megadni. Másolja ki ezt a jelszót, mielőtt bezárja a telepítőt. Néhány lépés múlva újra használni fogja.
A README azt javasolja, hogy hozzon létre aliasokat a mysql
és a mysqladmin
számára. Vannak azonban más parancsok is, amelyek hasznosak, mint például a mysqldump
. Ehelyett frissítheti az elérési útvonalát, hogy tartalmazza a /usr/local/mysql/bin
-t.
export PATH=/usr/local/mysql/bin:$PATH
Figyelem: Az elérési útvonal frissítéséhez új Terminal ablakot kell nyitnia, vagy a fenti parancsot kell futtatnia.
Végül futtassa a mysql_secure_installation
parancsot. Bár ez nem szükséges, de jó gyakorlat az adatbázis védelme érdekében. Itt is megváltoztathatja azt a csúnya ideiglenes jelszót valami kezelhetőbbre a helyi fejlesztéshez.
A PHP és a MySQL összekapcsolása
El kell érnie, hogy a PHP és a MySQL kommunikálni tudjon egymással. Erre több lehetőség is van. Nekem a következő tetszik, mivel nem igényel sok konfiguráció megváltoztatását:
mkdir /var/mysqlln -s /tmp/mysql.sock /var/mysql/mysql.sock
Kiegészítő konfiguráció (opcionális)
Az Apache 2.4 alapértelmezett konfigurációja macOS-en elég soványnak tűnt. Például az olyan gyakori modulok, mint a mod_rewrite
le voltak tiltva. Érdemes most engedélyezni, hogy a jövőben ne felejtse el, hogy le vannak tiltva.
Szerkesztettem az Apache konfigurációmat:
vi /etc/apache2/httpd.conf
Elkommentáltam a következő sorokat (távolítsa el a #
):
LoadModule deflate_module libexec/apache2/mod_deflate.soLoadModule expires_module libexec/apache2/mod_expires.soLoadModule rewrite_module libexec/apache2/mod_rewrite.so
Ha több projektet fejleszt, és szeretné, ha mindegyiknek egyedi url-je lenne, akkor konfigurálhatja az Apache VirtualHosts-t macOS-re.
Ha a PHPMyAdmin-t szeretné telepíteni, térjen vissza az Apache, PHP és MySQL telepítéséről szóló eredeti bejegyzésemhez macOS-en.
Azt találta érdekesnek? Folytassuk a beszélgetést a Twitteren.