Átfogó útmutató a Magento2 áruház Ubuntu 20.04 kiszolgálón történő beállításához és üzembe helyezéséhez.
A Magento egy népszerű e-kereskedelmi platform, amelyet PHP-ben építenek és írnak, és sok kisvállalkozás használja termékek értékesítésére és online jelenlét kialakítására. Lehetővé teszi egy teljes értékű online áruház létrehozását olyan funkciókkal, mint a készletkezelés, a termékkatalógusok, a szállítás, a számlázás és még sok más.
Ha elegáns és vállalati szintű vásárlási platformot szeretne felépíteni vállalkozása számára, a Magento nagyszerű kiindulópont lehet. Tehát ebben az útmutatóban megvizsgáljuk, hogyan állíthatjuk be a Magento Community Edition 2.3-as verzióját LAMP-verem segítségével egy Ubuntu 20.04 szerveren.
Előfeltételek
Szüksége lesz egy Ubuntu 20.04 LTS-kiszolgálóra, és be kell jelentkeznie a sudo
engedélyezett felhasználó. Szüksége lesz egy tartománynévre is, amely az Ubuntu 20.04 szerver IP-címére mutat. Használni fogjuk example.com
ahol domain névre van szükség, cserélje ki a saját domainjére. Mielőtt elkezdené, frissítse a csomaglistát, majd frissítse a csomagokat az Ubuntu 20.04 kiszolgálón.
sudo apt frissítés && sudo apt frissítés
Telepítse az Apache webszervert
A Magento működéséhez webszerver szükséges, ebben az útmutatóban úgy döntöttünk, hogy a Magento alkalmazást a LAMP (Linux, Apache, MySQL, PHP) veremen keresztül futtassuk. Tehát telepíteni fogjuk az összes LAMP veremből álló csomagot.
Az Apache webszerver az egyik legnépszerűbb webszerver az interneten, a teljes webszerver-piac közel 37,2%-ával. Dönthet úgy is, hogy a Magento-t a LEMP veremre telepíti, amely az Nginx webszervert használja az apache helyett. Ebben az útmutatóban azonban a Megento szerverünket az Apache segítségével telepítjük.
Az Apache webszerver telepítéséhez futtassa az alábbi parancsot:
sudo apt install apache2
Írja be felhasználói jelszavát, és nyomja meg a gombot Y
ha felszólítják. Amikor a telepítés befejeződött, be kell állítanunk az Ubuntu egyszerű tűzfalát (UFW), hogy engedélyezze a porton a forgalmat 80
& 443
.
Az UFW előre konfigurált profilokkal érkezik, amelyek átkapcsolhatók, hogy az alkalmazás hozzáférjen az Ubuntu 20.04 szerver portjaihoz. Tehát az Apache webszerver telepítésekor az „Apache”, „Apache Full” és „Apache Secure” nevű UFW-profilok hozzáadásra kerültek az UFW-alkalmazások listájához. Engedélyezze az Apache webszerver számára a porton való kiszolgálást 80
& 443
futással:
a sudo ufw engedélyezi az 'Apache Full'-t
Most már csak az UFW-t kell engedélyeznünk, de mielőtt ezt megtennénk, győződjön meg arról, hogy engedélyezte a portot 22
(SSH). Ha nem változtatja meg az SSH UFW-szabályokat, kizárhatja az Ubuntu 20.04-szerverét.
sudo ufw engedélyezi az 'OpenSSH'-t
Végül engedélyezze az UFW tűzfalat a következő futtatásával:
sudo ufw engedélyezése
nyomja meg Y
Ha olyan üzenetet kap, amely szerint a parancs megzavarhatja az SSH-kapcsolatokat, mivel már hozzáadtunk egy szabályt az SSH átengedésére. Most már elérheti az apache webszervert a böngészőn keresztül, írja be az Ubuntu 20.04 szerver IP-címét az URL-sávba, és nyomja meg az Enter billentyűt.
Telepítse a MySQL Servert
Szüksége lesz egy adatbázis-kiszolgálóra is a Magento futtatásához, mivel ez az a hely, ahol a Magento bolt összes tartalma tárolódik. Telepíteni fogjuk a MySQL szervert, és létrehozunk egy nevű felhasználót magentouser
nevű adatbázis pedig magento
a Magento számára.
A MySQL csomagot ún mysql-szerver
Az Ubuntu tárolókban telepítse a következő futtatásával:
sudo apt install mysql-server
Ezután megfelelően konfigurálnunk kell a MySQL biztonsági beállításait. Szerencsére a MySQL-csomaghoz tartozik egy biztonsági szkript, amely megkönnyíti a MySQL-kiszolgáló konfigurálását. Tehát futtassa ezt a szkriptet a következő parancs futtatásával:
sudo mysql_secure_installation
A rendszer több kérdést is fel fog tenni, ezek a MySQL szerver optimális beállításai:
- Szeretné beállítani a JELSZÓ VALÓSÍTÁSA komponenst?[y/n]: Enter
Y
- A jelszó-érvényesítési szabályzatnak három szintje van.
- Kérjük, írja be: 0 = ALACSONY, 1 = KÖZEPES és 2 = ERŐS: Írja be
2
- Kérjük, írja be: 0 = ALACSONY, 1 = KÖZEPES és 2 = ERŐS: Írja be
- Itt állítsa be a root jelszót.
- Új jelszó: Adjon meg egy jelszót a MySQL root felhasználó számára.
- Új jelszó megadása: Ismételje meg a választott jelszót.
- Eltávolítja a névtelen felhasználókat? [y/n]: Enter
Y
- Letiltja a root bejelentkezést távolról? [y/n] : Belépés
Y
- Eltávolítja a tesztadatbázist, és hozzáférhet hozzá? [y/n] : Belépés
Y
- Újratölti a jogosultságtáblázatokat most? [y/n] : Belépés
Y
Ezután annak ellenőrzéséhez és érvényesítéséhez, hogy a MySQL szerver telepítve van-e és megfelelően működik-e, jelentkezzen be root felhasználóként a MySQL szerverre a következőképpen:
sudo mysql
Adja meg sudo
felhasználói jelszót, amikor a rendszer kéri, és nyomja meg az Enter billentyűt. A MySQL root felhasználó a unix_socket
a bejelentkezés hitelesítéséhez. Ez lényegében azt jelenti, hogy a sudo
hogy root felhasználóként jelentkezzen be a MySQL szerverre.
Hozzon létre egy új adatbázist és felhasználót a Magento számára
Most létrehozhatunk egy MySQL-felhasználót a Magento számára, és ha követte az útmutató minden lépését, akkor nyitva kell lennie a MySQL-konzolnak. Hozzon létre egy adatbázist, melynek neve magento
a következő lekérdezés megadásával a MySQL konzolon:
ADATBÁZIS LÉTREHOZÁSA magento;
Új MySQL felhasználó létrehozásához magentouser
, futtassa ezt a lekérdezést a konzolon:
CREATE FELHASZNÁLÓ 'magentouser'@'%' A mysql_native_password A 'jelszó' AZONOSÍTÁSA;
Jegyzet: Helyettesíteni a Jelszó
a lekérdezésben az Ön által választott erős jelszóval.
Akkor adja meg az újat magentouser
teljes hozzáférést biztosít a magento
adatbázis:
GRANT ALL ON magento.* A 'magentouser'@'%' címre A GRANT OPTION;
Be kell állítanunk a log_bin_trust_function_creators
paraméter értéke 1, mivel a MySQL legújabb verziójában le van tiltva, és engedélyezése nélkül a Magento néhány hibát dob a telepítés során. Ehhez futtassa a következő lekérdezést:
SET GLOBAL log_bin_trust_function_creators=1;
Végül töltse be újra a módosított adatbázis-jogosultságokat és beállításokat, és lépjen ki a konzolból a következő lekérdezések segítségével:
FLUSH KIVÁLTSÁGOK; KIJÁRAT;
Telepítse a PHP-t és a szükséges bővítményeket
A Magento működéséhez PHP és néhány PHP bővítmény szükséges. A cikk írásakor a Magento közösségi kiadású változata 2.3
nem működik a legújabb PHP verzióval 7.4
és ezért telepítenünk kell a PHP verziót 7.3
.
Hozzá kell adnunk egy harmadik féltől származó PHP PPA-t, hogy telepíthessük a PHP verziót 7.3
mivel az Ubuntu tárolókban csak a legfrissebb 7.4
csomagokat. Adja hozzá a PPA-t, és frissítse a csomaglistát az alábbi parancsok futtatásával:
sudo add-apt-repository ppa:ondrej/php && sudo apt frissítés
Ezután telepítse a PHP 7.3-at és a Magento által igényelt összes PHP-modult a következő parancs futtatásával:
sudo apt install php7.3 php7.3-common php7.3-mysql php7.3-fpm php7.3-gmp php7.3-curl php7.3-intl php7.3-mbstring php7.3-xmlrpc php7.3- gd php7.3-xml php7.3-cli php7.3-zip php7.3-bcmath php7.3-szappan libapache2-mod-php7.3
A PHP 7.3 telepítése után konfigurálnunk kell néhány alapvető beállítást, amelyeket a Magento javasol a megfelelő működéshez. Futtassa ezt a parancsot az FPM-bővítmény konfigurációs fájljának megnyitásához a nano használatával
sudo nano /etc/php/7.3/fpm/php.ini
Íme néhány a legtöbb Magento webhelyhez ajánlott beállítás.
file_uploads = Be enable_url_fopen = Be short_open_tag = Be memória_korlát = 256M cgi.fix_pathinfo = 0 upload_max_filesize = 100M max_execution_time = 360
Mentse el a változtatásokat a gomb megnyomásával Ctrl+O
majd a gomb megnyomásával lépjen ki a nano szerkesztőből Ctrl+X
. Most már megvan a PHP és az összes szükséges bővítmény, így továbbléphetünk a Magento beszerzésére.
Telepítse a Composert
A Composer egy PHP-függőségkezelő, amely megkönnyíti a PHP-keretrendszerek és -könyvtárak telepítését. Szükségünk van a Composerre a Magento letöltéséhez és telepítéséhez az Ubuntu 20.04 szerverünkre.
A zeneszerzőnek egy nevű csomagra van szüksége csomagolja ki
A letöltött könyvtárak és keretrendszerek kibontásához telepítse a következő futtatásával:
sudo apt install csomagold ki
Ezután telepítse a zeneszerzőt rendszerszinten a következő parancs futtatásával:
curl -sS //getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
A fenti parancsnak telepítenie kell a Composer függőségi kezelőt az Ubuntu 20.04 kiszolgálón. Ellenőrizze, hogy a Composer megfelelően telepítve van-e a következő futtatásával:
Zeneszerző
KIMENET: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ / /_/ / / / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Zeneszerző verzió 1.10.8 2020-06- 24 21:23:30 Használat: parancs [opciók] [érvek]
Töltse le és telepítse a Magento-t
Most folytathatjuk a Magento letöltését és telepítését, mivel a Magento által igényelt összes szükséges csomagot telepítettük és konfiguráltuk.
Magento fiók létrehozása
A Magento letöltéséhez az Ubuntu 20.04 szerverére Magento 2 hozzáférési kulcsra lesz szüksége. A hozzáférési kulcs megszerzéséhez Magento-fiókra lesz szüksége. Ha nem regisztrált, és nincs Magento fiókja, lépjen erre az oldalra, és kattintson a „Regisztráció” gombra.
Miután elkészült a Magento fiók létrehozásával, létrehozhat egy új hozzáférési kulcsot, hogy letölthesse a Magento 2-t a gépére a zeneszerző segítségével. Ezen az oldalon megtekintheti az összes Magento hozzáférési kulcsát. Ha nincs hozzáférési kulcs a Magento 2 fül alatt, kattintson az „Új hozzáférési kulcs létrehozása” gombra, és adjon nevet, majd nyomja meg az „OK” gombot.
Ezek a kulcsok a Magento 2 letöltéséhez használt hitelesítő adatok a Magento adattárból a Composer segítségével. Ezeket a kulcsokat fogjuk használni a Magento letöltésekor, de mielőtt ezt megtennénk, beállítjuk a könyvtártulajdonjogot és az engedélyeket.
Telepítés előtti tulajdonjog és engedély konfigurálása
A fájljogosultságok bármely webhely biztonságát megzavarhatják vagy megbonthatják, ezért szükséges az Apache szerver dokumentumgyökérének tulajdonjogának és engedélyének megfelelő beállítása.
Az alapértelmezett tulajdonosa a /var/www/
könyvtár a root felhasználó, de el kell érnünk és módosítanunk kell az ebben a könyvtárban található fájlokat. Ezenkívül a webszervernek hozzáférésre van szüksége a dokumentum gyökeréhez is, hogy visszaírhassa és módosítsa a Magento webhely tartalmát.
Tehát a probléma megoldásához hozzáadjuk az aktuális felhasználót a www-adatok
csoport, ehhez futtassa:
sudo usermod -a -G www-data $USER
A -a
-G
a lehetőségek fontosak, mivel hozzáadják www-adatok
a felhasználói fiók másodlagos csoportjaként, amely megőrzi a felhasználó elsődleges csoportját. Miután hozzáadta a felhasználót a webszerver csoporthoz, módosítsa a tulajdonosát /var/www/
és alkönyvtárai a következő paranccsal:
sudo chown -R $USER:www-data /var/www/
Most, hogy beállítottuk a Magento telepítés előtti engedélyeit, továbbléphetünk a letöltésre a webszerver Dokumentumgyökérben.
Magento letöltése
Ezen a ponton már rendelkeznie kell egy Magento-fiókkal, amelyben a hozzáférési kulcsok és a telepítés előtti engedélyek megfelelően vannak beállítva. Tehát a Composer segítségével letöltjük a Magento-t az Apache dokumentumgyökérbe, majd telepítjük.
Módosítsa az aktuális könyvtárat erre: /var/www/
így a terminál felé mutat a következő futtatással:
cd /var/www/
Futtassa az alábbi parancsot egy új projekt létrehozásához a Composer nevű néven magento
.
zeneszerző create-project --repository=//repo.magento.com/ magento/project-community-edition magento
A fenti parancs használata után a rendszer kérni fogja a felhasználónevet és a jelszót. Itt az általunk létrehozott hozzáférési kulcsokat kell használni. Másolja ki a nyilvános kulcsot, és illessze be felhasználónévként, majd hasonló módon másolja ki a privát kulcsát, és illessze be jelszóként a terminálba. Ezután nyomja meg Y
hogy elmentse a hitelesítő adatokat későbbi használatra.
Kimenet: „Magento/project-community-edition” projekt létrehozása a „./magento” címen. Figyelmeztetés a repo.magento.com webhelyről: Nem adta meg Magento hitelesítési kulcsait. Útmutatásért keresse fel a //devdocs.magento.com/guides/v2.3/install-gde/prereq/connect-auth.html Hitelesítés szükséges (repo.magento.com): Felhasználónév: e8b6120dce14c3d982a85525264897c4 Jelszó: A tárolni kívánt hitelesítési adatok a repo.magento.com számára a /home/ath/.config/composer/auth.json fájlban? [Yn] Y
Miután a Magento és az összes függősége letöltődött a Composeren keresztül, be kell állítanunk a tulajdonjogot és az engedélyeket az új magento projektkönyvtárhoz és fájljaihoz is. Módosítsa a könyvtárat a Magento projekt gyökérkönyvtárára a következőképpen:
cd /var/www/magento/
Ezután módosítsa a Magento projektkönyvtár és alkönyvtárainak csoporttulajdonosát a következő futtatással:
var generált szállító pub/static pub/media app/etc -type f -exec chmod g+w {} + && keresse var generált vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} + && chmod u+x bin/magento && sudo chown -R :www-data .
Ez a parancs megadja a webszerver csoportnak (www-adatok
) a gyártói, pub/static, pub/media és app/stb könyvtárakba és a bennük lévő fájlok írási engedélyei. Ezenkívül ez teszi a bin/magento
futtatható fájlt, így futtathatjuk és telepíthetjük a Magento-t a rendszerünkre.
Az Apache beállítása Magento számára
A Magento-t GUI-n keresztül fogjuk telepíteni, mivel ez ebben az esetben intuitívabb, mint a CLI telepítés. Ezért létre kell hoznunk egy virtuális gazdagépet az Apache webszerverhez, mielőtt folytatnánk a Magento telepítését.
Nyissa meg az Apache alapértelmezett virtuális gazdagépfájlját a nano segítségével a következő paranccsal:
sudo nano /etc/apache2/sites-available/000-default.conf
Módosítsa a Dokumentum gyökerét erre /var/www/magento
és add hozzá a következő kódrészletet alatta.
AllowOverride All ServerName example.com ServerAlias www.example.com
Helyettesíteni a example.com
a ServerName és ServerAlias mezőben a domain nevével. A változások a tiédben 000-default.conf
fájlnak valahogy úgy kell kinéznie, mint az alább látható kiemelt szöveg. Mentse el a változtatásokat a gomb megnyomásával Ctrl+O
és a használatával lépjen ki a szerkesztőből Ctrl+X
kulcsok.
ServerAdmin webmaster@localhost DocumentRoot /var/www/magento AllowOverride All ServerName example.com ServerAlias www.example.com ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log kombinálva
Ezután engedélyeznünk kell az as nevű Apache modot mod_rewrite
a Magento megköveteli. Rugalmas és hatékony módot biztosít az URL-ek manipulálására, ezért engedélyezze a modot a következő futtatásával:
sudo a2enmod újraírás
Indítsa újra az Apache szervert, hogy az általunk végzett változtatások érvényesüljenek a szerveren:
sudo systemctl indítsa újra az apache2-t
A Magento telepítése
Végre folytathatjuk a Magento telepítését, hiszen minden megvan, ami a Magento működéséhez szükséges. Írja be az Ubuntu 20.04 szerver IP-címét a kívánt böngésző URL-sávjába.
Kattintson az „Agree and Setup Magento” gombra a Magento telepítésének folytatásához. A Magento Web telepítő első lépése a készenléti ellenőrzés, amely ellenőrzi, hogy minden Magento követelmény teljesül. Kattintson a „Készenléti ellenőrzés indítása” gombra, majd a folyamat befejezése után nyomja meg a „Tovább” gombot.
A következő lépés a részletek beállítása és egy adatbázis hozzáadása a Magento számára. Már létrehoztunk egy MySQL felhasználót a Magento számára magentouser
nevű adatbázis pedig magento
a fenti részben. Töltse ki a megfelelő adatokat ebben a részben, nevezetesen az adatbázis-kiszolgáló felhasználónevét, jelszavát és adatbázisnevét, majd nyomja meg a „Tovább” gombot a folytatáshoz.
A Magento beállításának harmadik lépése a webes konfiguráció. Cserélje ki a „Store Address” bemeneti IP-címet a domain nevére, ha rendelkezik ilyennel. Ne felejtsen el perjelet tenni (/
) a domain neve után a rendszergazdai cím URL-je elérhetetlenné válik.
Ezután kattintson a Speciális beállítások elemre, és jelölje be mindkét HTTPS opciót, ha biztonságos kapcsolatot szeretne használni Magento webhelyéhez. Tartsa meg a többi beállítást, és nyomja meg a Tovább gombot.
Jegyzet: Ha bejelöli a HTTPS-beállításokat, SSL-tanúsítványokat kell beszereznie hozzá. Az oktatóanyag következő részében megvizsgáljuk, hogyan szerezhet be SSL-tanúsítványokat.
Az „Üzlet testreszabása” beállítások alatt Önnek csak az időzónát, az áruházban használt alapértelmezett pénznemet és az áruház alapértelmezett nyelvét kell módosítania igényei szerint. Nézzen körül ezekben a beállításokban, szükség esetén konfigurálja őket, ellenkező esetben kattintson a Tovább gombra a folytatáshoz.
Az ötödik lépésben Admin fiókot kell létrehoznia Magento Admin irányítópultjához. Adja meg az adminisztrátor új felhasználónevét, és adjon meg egy e-mail-címet, amelyet a domain név szolgáltatója adott. Hozzon létre egy erős jelszót az adminisztrátori fiókhoz, majd kattintson a Tovább gombra, ha végzett.
Az utolsó és utolsó lépés az, hogy egyszerűen kattintson a „Telepítés” gombra a beállítások megerősítéséhez és a telepítési folyamat megkezdéséhez. Amikor a telepítés befejeződött, a Magento telepítése megmutatja az összefoglalót és néhány fontos részletet a Magento webhelyről.
Jegyezze fel ezeket a részleteket egy biztonságos helyre, például egy offline papíralapú rekordra vagy egy biztonságos adatbázisba. A Magento rendszergazdai címet és titkosítási kulcsot soha nem szabad nyilvánosan megosztani. A titkosítási kulcs a Magento adatbázis titkosítására szolgál, hogy a felhasználói adatok biztonságban legyenek, még adatszivárgás esetén is.
Hozzon létre SSL-tanúsítványt Magento webhelyéhez
A Magento webhely telepítésre került, és a telepítés befejezése után azonnal elérhető. Ha azonban a webes forgalmat HTTPS-en keresztül szeretné kiszolgálni, akkor SSL-tanúsítványt kell beállítania a domainhez.
A Letsencrypt egy nonprofit tanúsító hatóság, amely ingyenesen biztosít TLS-tanúsítványokat. ún. csomagot fogunk használni certbot
amely segít a tanúsítvány beszerzésében és az Apache virtuális gazdagép automatikus konfigurálásában. Futtassa ezt a parancsot a terminálban a certbot telepítéséhez:
sudo apt install certbot python3-certbot-apache
A Letsencrypt tanúsítványának lekéréséhez és az Apache virtuális gazdagép konfigurálásához futtassa a következő parancsot:
sudo certbot --apache
A Certbot megkezdi a tanúsítványok beszerzését a Letsencrypt-től, megadja e-mail címét, amikor a rendszer kéri, majd nyomja meg az Enter billentyűt. Ezután írja be A
hogy elfogadja a Letsencrypt szolgáltatási feltételeit. A rendszer megkérdezi, hogy szeretné-e megosztani e-mail címét az EFF-al, írja be Y
vagy N
választásától függően.
Ezután megjelenik azon tartománynevek listája, amelyekhez aktiválni kívánja a HTTPS-t. Írja be a domain nevének megfelelő számot, és nyomja meg az Enter billentyűt.
A domainnév kiválasztása után a rendszer megkérdezi, hogy szeretné-e átirányítani a HTTP forgalmat HTTPS-re, írja be 2
és nyomja meg az entert. A Certbot most automatikusan konfigurálja az Apache virtuális gazdagépet a tartományhoz example.com
.
A Certbot csomaghoz tartozik a cronjob, amely automatikusan megújítja a szervertanúsítványokat, mielőtt lejárnának.Tesztelje, hogy működik-e az automatikus megújítás a következő futtatással:
sudo certbot renew --dry-run
A fenti kimenet azt jelenti, hogy az automatikus megújító cronjob megfelelően működik. A Certbot működésének ellenőrzéséhez nyissa meg a böngészőt, és keresse fel domainjét //example.com
.
Hasonlóképpen elérheti az adminisztrátori bejelentkezési oldalt a //example.com/admin_SecretString
, ez az URL a Magento telepítésének végén volt.
Sikeresen telepítette a Magento-t az Ubuntu 20.04 LTS-kiszolgálóra, és megkezdheti áruházának testreszabását az igényeinek megfelelően. Ha többet szeretne megtudni a Magentoról, és többet szeretne megtudni az üzletfejlesztésről, látogasson el a Magento Docs oldalára.