Laravel Herd: helyi PHP-környezet WordPresshez
A Laravel Herd egy natív helyi PHP-környezet macOS-re és Windowsra: WordPress- és Bedrock-oldalak .test domainen, PHP-verzióváltás, HTTPS, és mi tartozik a Pro változathoz.
A Laravel Herd helyi PHP-fejlesztői környezet macOS-re és Windowsra. A PHP, az nginx és a Node.js a gépen fut, nem külön virtuális gépben vagy konténerben. Laravelre készült, de a hivatalos doksi szerint a WordPress-oldalakhoz is használható: támogatja a hagyományos WordPress-telepítést és a Bedrockot is.
Van ingyenes és Pro változata. A cikk jelzi, mi melyikben van.
Telepítés
Szekció neve “Telepítés”- Töltsd le a Herdet a herd.laravel.com/download oldalról.
- Indítsd el. Az első indításkor a Herd letölti a legújabb PHP- és Node.js-verziót, és telepít egy háttérszolgáltatást, ami az nginxet és a dnsmasq-ot kezeli. Ehhez rendszergazdai jogosultság kell.
Követelmény macOS-en: macOS 14.6 vagy újabb, Apple Silicon. Windowson: Windows 10 vagy újabb.
A telepítés után a terminálból elérhető a herd parancs. Windowson ugyanígy a php, a composer, a laravel és a node.
Oldalak: park és link
Szekció neve “Oldalak: park és link”A Herd alapból a ~/Herd könyvtárat „parkolja”. Minden PHP-alkalmazás, amit ide teszel, automatikusan elérhető a mappa nevéből képzett .test domainen. A ~/Herd/peldaoldal mappa tehát a peldaoldal.test címen fut.
Más helyen lévő projektet linkelhetsz:
cd ~/Projektek/peldaoldalherd linkA herd link a mappa nevét használja domainnek. Saját név is megadható: herd link masik-nev. Grafikus felületen: New Application (macOS-en ⌘N), majd Link Existing App. További parkolt könyvtárat az általános beállításokban vehetsz fel. A Herd doksija a herd park parancsot nem írja le, ezért itt nem szerepel.
Jó, ha a mappa neve megegyezik a kívánt domainnel, és nem www.-val kezdődik.
WordPress telepítése
Szekció neve “WordPress telepítése”A WordPress adatbázist igényel (MySQL vagy MariaDB). A Herd doksija szerint ezt megkaphatod az ingyenes DBngin eszközzel vagy a Herd Pro szolgáltatásaival.
- Hozz létre egy adatbázist.
- Töltsd le a WordPressből a legújabb kiadást, és csomagold ki egy parkolt könyvtárba.
- Nevezd át a mappát a kívánt domainre.
- Nyisd meg a
mappanev.testcímet, és fuss végig a telepítőn.
A Herd doksija szerint a Herd használatakor az adatbázis felhasználóneve root, jelszó nincs. Ha az adatbázispéldányod nem az alapértelmezett porton fut, az adatbázis-host mezőben add meg a portot is.
Multisite-nál több domaint köthetsz egyetlen WordPress-telepítéshez. A webhely mappájából futtasd:
herd link masodik-domainBedrock
Szekció neve “Bedrock”A doksi szerint a Herd a Bedrock eltérő mappaszerkezetét is támogatja. A webroot (web/) beállításáról a hivatalos doksi nem ír, ezért erre itt nem adunk útmutatót. Ha a projekted 404-et ad, a doksi szerint egyedi driver kellhet: Custom Drivers.
PHP-verzió váltása
Szekció neve “PHP-verzió váltása”A Herd több PHP-verziót tud kezelni. Telepíteni és frissíteni a beállítások PHP fülén lehet egy kattintással, vagy parancssorból:
herd php:list # elérhető és telepített verziókherd php:install 8.3 # verzió telepítéseherd php:update 8.4 # legfrissebb javítókiadásra frissítésherd use 8.2 # globális verzió váltásaAlapból minden oldal a globális verziót használja. Egy oldalnak saját verziót az oldal mappájából adhatsz:
herd isolate 8.0herd isolated # az elkülönített oldalak listájaherd unisolate # vissza a globális verzióraGrafikus felületen ugyanez az Applications ablak oldalpanelének Environment részében van. A herd php és a herd composer parancs az adott mappához beállított PHP-verziót használja, így a herd composer install a projekt verziójával fut. Ez jól jön, ha egy régebbi bővítményt új PHP-n kell tesztelned, vagy fordítva.
HTTPS
Szekció neve “HTTPS”Az oldalak alapból HTTP-n futnak. HTTPS-t az Applications ablakban kapcsolhatsz: válaszd ki az oldalt, és a HTTPS kapcsolót állítsd be az Environment részben. Parancssorból:
herd secure # az oldal mappájábólherd secure peldaoldal # bárhonnan, név szerintherd unsecure # vissza HTTP-reherd secured # a tanúsítvánnyal rendelkező oldalak és lejáratukHa visszakapcsolod a HTTP-t, indítsd újra a böngészőt, mert például a Chrome megjegyezheti az átirányítást. Ne feledd átírni az oldal címét a WordPressben (Beállítások → Általános, vagy Bedrockban a WP_HOME és WP_SITEURL), ha http-ről https-re váltasz.
Adatbázis és levelek: ingyenes vagy Pro
Szekció neve “Adatbázis és levelek: ingyenes vagy Pro”| Funkció | Változat |
|---|---|
PHP, nginx, .test domainek, park/link, PHP-váltás, HTTPS |
alap Herd |
| MySQL- és MariaDB-példány a Herdből (egykattintásos) | Herd Pro |
| Helyi levélfogó (SMTP szerver, alapból a 2525-ös porton) | Herd Pro |
dump segéd, az eredmény az Insights ablakban |
Herd Pro |
A MySQL vagy MariaDB a Pro nélkül is használható: telepítheted a gyártó csomagjából, vagy használhatod az ingyenes DBngin eszközt.
Levelek tesztelése
Szekció neve “Levelek tesztelése”A Herd Pro helyi levélfogója a kimenő leveleket nem küldi el, hanem megmutatja a Herd levelezőkliensében. A Herd doksija WordPresshez ezt a kódot adja a téma functions.php fájljába:
function herd_mailer($phpmailer) { $phpmailer->isSMTP(); $phpmailer->Host = '127.0.0.1'; $phpmailer->SMTPAuth = true; $phpmailer->Port = 2525; $phpmailer->Username = 'WordPress'; $phpmailer->Password = '';}add_action('phpmailer_init', 'herd_mailer');Kipróbálni a jelszó-visszaállítással lehet. A fogott leveleket a herd mail:* parancsok is listázzák.
Bedrock- vagy Sage-projektben ezt a kódot ne a témába, hanem egy helyi, nem verziózott mu-pluginba tedd, hogy ne kerüljön éles környezetbe.
Mire figyelj
Szekció neve “Mire figyelj”- Csak helyi fejlesztésre való. A
.testdomainek csak a te gépeden működnek. Az oldal megosztásáról a Sharing Sites oldal szól. - Nem egyezik az éles szerverrel. A Herd a gépen fut, nem a tárhelyed környezetét másolja. A PHP-verziót és a kiterjesztéseket (PHP Extensions) az éles környezethez igazítsd.
- Ha a környezetet a csapattal kell egyeztetni, vagy MySQL helyett pontosan a tárhely adatbázis-motorja kell, nézd meg a DDEV és a LocalWP cikket is.
Hasznos linkek
Szekció neve “Hasznos linkek”Készült: