Kuidas installida Magento 2 Ubuntu 20.04 LTS-i

Põhjalik juhend Magento2 poe seadistamiseks ja juurutamiseks Ubuntu 20.04 serveris.

Magento on populaarne e-kaubanduse platvorm, mis on koostatud ja kirjutatud PHP-s. Paljud väikeettevõtted kasutavad seda toodete müümiseks ja veebis kohaloleku loomiseks. See võimaldab teil luua täisväärtusliku veebipoe, millel on sellised funktsioonid nagu laohaldus, tootekataloogid, saatmine, arveldamine ja palju muud.

Kui soovite luua oma ettevõtte jaoks elegantse ja ettevõttetasemel ostuplatvormi, peaks Magento olema suurepärane lähtepunkt. Nii et selles juhendis vaatleme, kuidas seadistada Magento kogukonna väljaande versioon 2.3 koos LAMP-pinuga Ubuntu 20.04 serveris.

Eeltingimused

Teil on vaja Ubuntu 20.04 LTS-serverit ja sisse logida kui a sudo lubatud kasutaja. Teil on vaja ka domeeninime, mis osutab teie Ubuntu 20.04 serveri IP-le. Me kasutame example.com kus iganes domeeninime nõutakse, asendage see oma domeeniga. Enne alustamist värskendage pakettide loendit ja seejärel uuendage pakette oma Ubuntu 20.04 serveris.

sudo apt värskendus && sudo apt uuendus

Installige Apache veebiserver

Magento vajab töötamiseks veebiserverit, selles juhendis oleme otsustanud kasutada Magento rakendust LAMP-i (Linux, Apache, MySQL, PHP) pinu kaudu. Nii et installime kõik LAMP-i virnast koosnevad paketid.

Apache veebiserver on üks populaarsemaid veebiservereid Internetis, omades peaaegu 37,2% kogu veebiserveri turuosast. Samuti võite valida Magento installimise üle LEMP-pinu, mis kasutab apache'i asemel Nginxi veebiserverit. Kuid selles juhendis juurutame oma Megento serveri Apache abiga.

Apache veebiserveri installimiseks käivitage järgmine käsk:

sudo apt install apache2

Sisestage oma kasutaja parool ja vajutage Y kui küsitakse. Kui installimine on lõppenud, peame konfigureerima Ubuntu lihtsa tulemüüri (UFW), et võimaldada liiklust pordis 80 & 443.

UFW-l on eelkonfigureeritud profiilid, mida saab ümber lülitada, et lubada rakendusel juurdepääsu teie Ubuntu 20.04 serveri portidele. Nii et kui installisite Apache veebiserveri, lisati UFW-rakenduste loendisse UFW-profiilid nimega "Apache", "Apache Full" ja "Apache Secure". Lubage Apache veebiserveril pordis teenindada 80 & 443 joostes:

sudo ufw lubab 'Apache Full'

Nüüd peame vaid UFW lubama, kuid enne seda veenduge, et olete pordi lubanud 22 (SSH). Kui te SSH UFW reegleid ei muuda, võite jääda oma Ubuntu 20.04 serverist välja.

sudo ufw luba 'OpenSSH'

Lõpuks lubage UFW tulemüür, käivitades:

sudo ufw lubamine

Vajutage Y kui saate teate, et käsk võib SSH-ühendusi häirida, kuna oleme juba lisanud reegli SSH-i selle kaudu lubamiseks. Nüüd pääsete brauseri kaudu juurde Apache veebiserverile, sisestage URL-i ribale oma Ubuntu 20.04 serveri IP-aadress ja vajutage sisestusklahvi.

apache2 ubuntu vaikeleht

Installige MySQL Server

Magento käitamiseks vajate ka andmebaasiserverit, kuna sinna salvestatakse kogu Magento poe sisu. Installime MySQL-i serveri ja loome kasutaja nimega magentouser ja andmebaasi nimega magento Magento jaoks.

MySQL-i paketti nimetatakse kui mysql-server Ubuntu hoidlates installige see, käivitades:

sudo apt install mysql-server

Järgmiseks peame MySQL-i turvaseaded õigesti konfigureerima. Õnneks on MySQL-paketiga kaasas turvaskript, mis muudab MySQL-serveri konfigureerimise palju lihtsamaks. Niisiis, käivitage see skript, käivitades järgmise käsu:

sudo mysql_secure_installation

Teilt küsitakse mitu küsimust, need on MySQL-serveri optimaalsed sätted:

  • Kas soovite seadistada komponendi VALIDATE PASSWORD?[y/n]: Sisestage Y
  • Parooli kinnitamise poliitikal on kolm taset.
    • Sisestage 0 = LOW, 1 = KESKMINE ja 2 = TUGEV: Sisestage 2
  • Seadke siin root parool.
    • Uus parool: sisestage MySQL-i juurkasutaja parool.
    • Sisestage uus parool uuesti: korrake valitud parooli.
  • Kas eemaldada anonüümsed kasutajad? [ja/n]: sisestage Y
  • Kas keelata juurjuurde sisselogimine eemalt? [y/n] : Sisestage Y
  • Kas eemaldada testandmebaas ja sellele juurdepääs? [y/n] : Sisestage Y
  • Kas laadida privileegitabelid kohe uuesti? [y/n] : Sisestage Y

Seejärel, et kontrollida ja kinnitada, et MySQL-server on installitud ja töötab korralikult, logige MySQL-serverisse juurkasutajana sisse:

sudo mysql

Sisestage oma sudo kasutaja parool, kui teil seda palutakse, ja vajutage sisestusklahvi. MySQL-i juurkasutaja kasutab unix_socket sisselogimise autentimiseks. See tähendab sisuliselt seda, et peate olema a sudo kasutaja MySQL-serverisse oma juurkasutajana sisse logida.

Looge Magento jaoks uus andmebaas ja kasutaja

Nüüd saame Magento jaoks luua MySQL-i kasutaja ja kui olete järginud kõiki selle juhendi samme, peab teil olema avatud MySQL-i konsool. Looge andmebaas nimega magento sisestades MySQL-i konsooli järgmise päringu:

LOO ANDMEBAAS magento;

Uue MySQL-i kasutaja loomiseks kutsutakse magentouser, käivitage see päring konsoolis:

LOO KASUTAJA 'magentouser'@'%' TUNNISTATUD PARooliga mysql_native_password;

Märge: Asendage parool päringus teie valitud tugeva parooliga.

Seejärel anna uus magentouser täielik juurdepääs magento andmebaas:

GRANT ALL ON magento.* 'magentouser'@'%' KOOS GRANT OPTION;

Peame määrama log_bin_trust_function_creators parameeter 1, kuna see on MySQL-i uusimas versioonis keelatud ja ilma seda lubamata tekitab Magento installimisel mõned vead. Selleks käivitage järgmine päring:

SET GLOBAL log_bin_trust_function_creators=1;

Lõpuks laadige uuesti meie muudetud andmebaasi õigused ja sätted ning väljuge konsoolist järgmiste päringute abil:

FLUSH PRIVILEEGID; VÄLJU;

Installige PHP ja vajalikud laiendused

Magento vajab funktsioneerimiseks PHP-d ja väheseid PHP laiendusi. Selle artikli kirjutamise ajal Magento kogukonna väljaande versioon 2.3 ei tööta uusima PHP versiooniga 7.4 ja seetõttu peame installima PHP versiooni 7.3.

Peame lisama kolmanda osapoole PHP PPA, et saaksime installida PHP versiooni 7.3 kuna Ubuntu hoidlates on ainult uusim 7.4 paketid. Lisage PPA ja värskendage pakettide loendit, käivitades järgmised käsud:

sudo add-apt-hoidla ppa:ondrej/php && sudo apt värskendus

Seejärel installige PHP 7.3 ja kõik PHP moodulid, mida Magento nõuab, käivitades järgmise käsu:

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-seep libapache2-mod-php7.3

Pärast PHP 7.3 installimist peame konfigureerima mõned põhisätted, mida Magento soovitab korralikult töötada. Käivitage see käsk, et avada FPM-laienduse konfiguratsioonifail nano abil

sudo nano /etc/php/7.3/fpm/php.ini

Siin on mõned seaded, mida soovitatakse enamiku Magento veebisaitide jaoks.

file_uploads = Sees allow_url_fopen = Sees short_open_tag = Sees mälu_piirang = 256M cgi.fix_pathinfo = 0 upload_max_filesize = 100M max_execution_time = 360

Salvestage muudatused vajutades Ctrl+O seejärel väljuge nanoredaktorist, vajutades Ctrl+X. Nüüd on meil PHP ja kõik vajalikud laiendused ning saame edasi liikuda Magento hankimise poole.

Installige helilooja

Composer on PHP sõltuvushaldur, mis muudab PHP raamistike ja teekide installimise lihtsamaks. Magento allalaadimiseks ja meie Ubuntu 20.04 serverisse installimiseks vajame Composerit.

Helilooja nõuab paketti nimega lahti pakkima allalaaditud teekide ja raamistike ekstraktimiseks installige see, käivitades:

sudo apt install unzip

Seejärel installige helilooja kogu süsteemi tasemel, käivitades selle käsu:

curl -sS //getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --failinimi=helilooja

Ülaltoodud käsk peaks installima Ubuntu 20.04 serverisse Composeri sõltuvushalduri. Kontrollige, kas Composer on õigesti installitud, käivitades:

helilooja
 VÄLJUND:  ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ / /_/ / / / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Helilooja versioon 1.10.8 2020-06- 24 21:23:30 Kasutamine: käsk [valikud] [argumendid] 

Laadige alla ja installige Magento

Nüüd saame jätkata Magento allalaadimise ja installimisega, kuna oleme installinud ja konfigureerinud kõik Magento jaoks vajalikud paketid.

Magento konto loomine

Magento allalaadimiseks oma Ubuntu 20.04 serverisse vajate Magento 2 juurdepääsuvõtit. Selle juurdepääsuvõtme saamiseks vajate Magento kontot. Kui te pole registreerunud ja teil pole Magento kontot, minge sellele lehele ja klõpsake nuppu Registreeru.

Kui olete Magento konto loomise lõpetanud, saate luua uue juurdepääsuvõtme, et saaksite Magento 2 oma arvutisse helilooja abil alla laadida. Sellel lehel saate vaadata kõiki oma Magento juurdepääsuklahve. Kui vahekaardil Magento 2 pole juurdepääsuvõtit, klõpsake nuppu Loo uus juurdepääsuvõti ja andke sellele nimi, seejärel vajutage nuppu OK.

Need võtmed on teie mandaadid, mida kasutatakse Magento 2 allalaadimiseks Magento hoidlast Composeri kaudu. Kasutame neid võtmeid Magento allalaadimisel, kuid enne seda seadistame kataloogi omandiõiguse ja load.

Installieelne omandiõiguse ja lubade konfigureerimine

Failiõigused võivad muuta või rikkuda mis tahes veebisaidi turvalisust, seega on vaja Apache serveri dokumendijuure omandiõigus ja õigused õigesti seadistada.

Vaikeomanik /var/www/ kataloog on juurkasutaja, kuid me peame selle kataloogi failidele juurde pääsema ja neid muutma. Lisaks vajab veebiserver juurdepääsu Magento saidi sisu tagasikirjutamiseks ja muutmiseks ka dokumendi juurtele.

Selle probleemi lahendamiseks lisame praeguse kasutaja loendisse www-andmed rühm, selleks käivitage:

sudo usermod -a -G www-andmed $USER

The -a-G valikud on nende lisamisel olulised www-andmed kasutajakonto sekundaarse rühmana, mis säilitab kasutaja esmase rühma. Pärast kasutaja lisamist veebiserveri gruppi muutke selle omanikku /var/www/ ja selle alamkataloogid, kasutades seda käsku:

sudo chown -R $USER:www-data /var/www/

Nüüd, kui oleme Magento jaoks installieelsed õigused seadistanud, saame jätkata selle allalaadimisega veebiserveri dokumendijuures.

Magento allalaadimine

Nüüd peaks teil olema Magento konto, mille juurdepääsuvõtmed ja installieelsed õigused on õigesti seadistatud. Seega kasutame Composerit Magento allalaadimiseks Apache'i dokumendijuuresse ja seejärel installime.

Muutke praeguseks kataloogiks /var/www/ nii et terminal osutab sellele, käivitades:

cd /var/www/

Käivitage allolev käsk, et luua uus projekt, kasutades nimega Composerit magento.

helilooja create-project --repository=//repo.magento.com/ magento/project-community-edition magento

Pärast ülaltoodud käsu kasutamist küsitakse teilt kasutajanime ja parooli. Siin tuleb kasutada meie loodud juurdepääsuklahve. Kopeerige avalik võti ja kleepige see kasutajanimena, seejärel kopeerige samamoodi oma privaatvõti ja kleepige see terminali paroolina. Seejärel vajutage Y et salvestada mandaadid edaspidiseks kasutamiseks.

 Väljund:  Projekti "Magento/project-community-edition" loomine saidil "./magento" Hoiatus saidilt repo.magento.com: te pole esitanud oma Magento autentimisvõtmeid. Juhiste saamiseks külastage aadressi //devdocs.magento.com/guides/v2.3/install-gde/prereq/connect-auth.html Nõutav autentimine (repo.magento.com): Kasutajanimi: e8b6120dce14c3d982a85525264897c4 Parool: Kas soovite salvestada mandaadi repo.magento.com jaoks asukohas /home/ath/.config/composer/auth.json? [Yn] Y

Kui Magento ja kõik selle sõltuvused on Composeri kaudu alla laaditud, peame määrama ka uue magento projektikataloogi ja selle failide omandiõiguse ja loa. Muutke kataloog Magento projekti juureks järgmiselt:

cd /var/www/magento/

Seejärel muutke Magento projektikataloogi ja selle alamkataloogide omanikku, käivitades:

leia vari genereeritud tarnija pub/staatiline pub/meediumirakendus/etc -tüüp f -exec chmod g+w {} + && leia var genereeritud tarnija pub/staatiline pub/meediumirakendus/etc -tüüp d -exec chmod g+ws {} + && chmod u+x bin/magento && sudo chown -R :www-data . 

See käsk annab veebiserveri rühmale (www-andmed). Lisaks muudab see prügikast/magento käivitatava faili, et saaksime selle käivitada ja Magento oma süsteemi installida.

Apache konfigureerimine Magento jaoks

Me installime Magento GUI kaudu, kuna see on antud juhul intuitiivsem kui CLI installimine. Seega peame enne Magento installimist looma Apache veebiserveri jaoks virtuaalse hosti.

Avage Apache'i vaikimisi virtuaalne hostifail nano abil, kasutades järgmist käsku:

sudo nano /etc/apache2/sites-available/000-default.conf

Muutke dokumendi juur väärtuseks /var/www/magento ja lisage selle alla järgmine koodilõik.

 AllowOverride All ServerName example.com ServerAlias ​​www.example.com

Asendage example.com väljades ServerName ja ServerAlias ​​oma domeeninimega. Muutused sinus 000-default.conf fail peaks välja nägema umbes nagu allpool näidatud esiletõstetud tekst. Salvestage muudatused vajutades Ctrl+O ja väljuge redaktorist, kasutades Ctrl+X võtmed.

 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 kombineeritud 

Järgmisena peame lubama Apache modi nimega as mod_rewrite nõuab Magento. See pakub paindlikku ja võimsat viisi URL-idega manipuleerimiseks, seega lubage mod, käivitades:

sudo a2enmod ümberkirjutamine

Taaskäivitage Apache server, et kõik meie tehtud muudatused rakenduksid serverile:

sudo systemctl taaskäivitage apache2

Magento installimine

Lõpuks saame jätkata Magento installimisega, kuna meil on olemas kõik, mida Magento tööks vajab. Sisestage eelistatud brauseri URL-i ribale oma Ubuntu 20.04 serveri IP-aadress.

Magento installimise jätkamiseks klõpsake nuppu „Nõustun ja seadista Magento”. Magento Web installeri esimene samm on valmisoleku kontroll, millega kontrollitakse, kas kõik Magento nõuded on täidetud. Klõpsake nuppu "Alusta valmisoleku kontrolli" ja pärast protsessi lõppu klõpsake nuppu "Järgmine".

Järgmine samm on Magento üksikasjade seadistamine ja andmebaasi lisamine. Oleme Magento jaoks juba loonud MySQL-i kasutaja nimega magentouser ja andmebaasi nimega magento ülaltoodud jaotises. Täitke selles jaotises sobivad üksikasjad, nimelt andmebaasiserveri kasutajanimi, parool ja andmebaasi nimi ning seejärel vajutage jätkamiseks nuppu Edasi.

Magento seadistuse kolmas samm on veebikonfiguratsioon. Asendage IP-aadress sisendist „Poe aadress” oma domeeninimega, kui teil see on. Ärge unustage panna kaldkriipsu (/) pärast teie domeeninime, nagu muidu, muutub administraatori aadressi URL kättesaamatuks.

Seejärel klõpsake nuppu Täpsemad suvandid ja märkige mõlemad HTTPS-i suvandid, kui soovite kasutada oma Magento saidi jaoks turvalist ühendust. Jätke ülejäänud sätted nii, nagu need on, ja vajutage edasi.

Märge: Kui märgite HTTPS-i valikud, peate hankima selle jaoks SSL-sertifikaadid. SSL-sertifikaatide hankimist käsitleme selle õpetuse järgmises jaotises.

Seadete jaotises „Oma poe kohandamine” peate lihtsalt muutma ajavööndit, poes kasutatavat vaikevaluutat ja poe vaikekeelt vastavalt oma vajadustele. Vaadake neid seadeid ringi ja vajadusel konfigureerige neid, vastasel juhul klõpsake jätkamiseks nuppu Järgmine.

Viiendas etapis peate oma Magento administraatori armatuurlaua jaoks looma administraatori konto. Sisestage oma administraatori jaoks uus kasutajanimi ja sisestage domeeninime pakkuja antud e-posti aadress. Looge administraatorikonto jaoks tugev parool ja seejärel klõpsake nuppu Järgmine, kui olete lõpetanud.

Viimane ja viimane samm on seadistuste kinnitamiseks ja installiprotsessi alustamiseks lihtsalt klõpsata nupul "Install". Kui installimine on lõppenud, kuvab Magento seadistus teile Magento saidi kokkuvõtte ja mõningaid olulisi üksikasju.

Märkige need üksikasjad üles kuskile turvalisse kohta, näiteks võrguühenduseta paberkandjal või turvalises andmebaasis. Magento administraatori aadressi ja krüpteerimisvõtit ei tohiks kunagi avalikult jagada. Krüpteerimisvõtit kasutatakse Magento andmebaasi krüpteerimiseks, et kasutaja andmed oleksid turvalised ka andmelkke korral.

Looge oma Magento saidi jaoks SSL-sertifikaat

Magento sait on juurutatud ja sellele pääseb juurde kohe pärast installimise lõpetamist. Kuid kui soovite veebiliiklust teenindada HTTPS-i kaudu, peate oma domeeni jaoks seadistama SSL-sertifikaadi.

Letsencrypt on mittetulunduslik sertifitseerimisasutus, mis pakub TLS-i sertifikaate tasuta. Hakkame kasutama paketti nimega certbot mis aitab sertifikaati hankida ja Apache virtuaalset hosti automaatselt konfigureerida. Käivitage see käsk terminalis, et installida certbot:

sudo apt install certbot python3-certbot-apache

Serdi hankimiseks Letsencryptist ja Apache virtuaalse hosti konfigureerimiseks käivitage järgmine käsk:

sudo certbot --apache

Certbot alustab Letsencryptilt sertifikaatide hankimise protsessi, esitab küsimisel teie e-posti aadressi ja seejärel vajuta sisestusklahvi. Järgmiseks tippige A nõustuma Letsencrypti teenusetingimustega. Teilt küsitakse, kas soovite oma e-posti aadressi EKFiga jagada, sisestage Y või N sõltuvalt teie valikust.

Järgmisena antakse teile loend domeeninimedest, mille jaoks soovite HTTPS-i aktiveerida. Sisestage oma domeeninimele vastav number ja vajutage sisestusklahvi.

Pärast domeeninime valimist küsitakse teilt, kas soovite HTTP-liikluse HTTPS-i ümber suunata, tippige 2 ja vajuta sisestusklahvi. Certbot konfigureerib nüüd automaatselt domeeni Apache virtuaalse hosti example.com.

Certboti paketiga on kaasas cronjob, mis uuendab teie serveri sertifikaate automaatselt enne nende aegumist.Kontrollige, kas automaatne uuendamine töötab, käivitades:

sudo certbot uuendada --dry-run

Ülaltoodud väljund tähendab, et automaatse uuendamise cronjob töötab korralikult. Certboti toimimise kinnitamiseks avage brauser ja külastage oma domeeni //example.com.

Samamoodi pääsete administraatori sisselogimislehele, kasutades //example.com/admin_SecretString, see URL oli Magento installi lõpus.

Olete Magento edukalt installinud Ubuntu 20.04 LTS serverisse ja nüüd saate hakata oma poodi oma vajaduste järgi kohandama. Magento kohta lisateabe saamiseks ja kaupluse arendamise kohta lisateabe saamiseks minge Magento Docsi lehele.