Giunsa ang Pag-install sa Magento sa Rocky Linux ug AlmaLinux


Gisulat sa PHP, ang Magento usa ka sikat nga open-source, ug versatile eCommerce platform nga naghatag sa mga negosyo og online shopping cart. Gipahimuslan niini ang lain-laing PHP frameworks sama sa Symfony ug Laminas aron mapalambo ang gamit ug usability niini.

Gihatagan ka sa Magento og control panel sa Administrator nga makatabang kanimo sa paghimo sa imong online shop, pagdumala sa katalogo sa produkto, pagmonitor sa mga transaksyon ug mga invoice, ug pagsubay sa pamatasan sa pagpalit sa mga kostumer taliwala sa daghang uban pang mga buluhaton.

Kung wala’y daghang pagduha-duha, magsugod kita sa pag-install sa Magento sa Rocky Linux ug AlmaLinux.

Aron malampuson nga ma-install ang Magento, una sa tanan, kinahanglan nga adunay usa ka LAMP stack nga na-install sa:

  • Unsaon Pag-instalar sa LAMP Stack sa Rocky Linux
  • Unsaon Pag-instalar sa LAMP Stack sa AlmaLinux

Usab, siguruha nga ikaw adunay usa ka hingpit nga kwalipikado nga ngalan sa domain (FQDN) nga nagtudlo sa publiko nga IP adres sa server. Niini nga giya, atong gamiton ang linuxtechgeek.info domain.

Sa katapusan, siguroha nga ikaw adunay SSH nga pag-access sa usa ka sudo user nga gi-configure.

Lakang 1: I-install ang Dugang nga mga Module sa PHP ug Ubang mga Dependency

Magsugod kami sa pag-instalar sa mga module sa php nga usa ka kinahanglanon alang sa pag-instalar sa Magento.

$ sudo dnf install php-mysqlnd php-xml php-cli php-soap php-pd php-opcache php-iconv php-bcmath php-gd o  php-intl php-mbstring php-json  php-zip unzip wget -y

Sa higayon nga ma-install, ulo ug usba ang php.ini configuration file.

$ sudo vim /etc/php.ini

Siguruha nga ang mga kantidad nga gihatag sa ubos nagpakita kung unsa ang naa kanimo. Siyempre, itakda ang imong date.timezone nga kantidad sumala sa imong timezone.

memory_limit = 1024M
upload_max_filesize = 256M
zlib.output_compression = on
max_execution_time = 18000
date.timezone = Europe/London

I-save ang mga pagbag-o ug paggawas.

Sunod, kinahanglan nimo nga i-install ang PHP sodium extension - libsodium. Kini usa ka module nga naghatag mga gamit sa pag-encrypt sa dali ug epektibo nga paagi. Aron ma-install ang module, kinahanglan namon nga i-install ang EPEL repository nga naghatag dugang nga mga pakete ug dependency aron suportahan ang pag-install niini.

Aron ma-install ang EPEL, ipatuman ang mando:

$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Sunod, i-install ang dugang nga mga dependency.

$ sudo dnf install php-cli libsodium php-pear php-devel libsodium-devel make

Uban sa tanan nga mga pakete ug dependency sa lugar, i-install ang libsodium PHP module pinaagi sa pagpadagan sa mosunod nga mga sugo sa maong han-ay.

$ sudo pecl channel-update pecl.php.net
$ sudo pecl install libsodium

Balik sa php.ini file.

$ sudo vim /etc/php.ini 

Idugang ang mosunod nga linya.

extension=sodium.so

Pag-save ug paggawas.

Aron mapamatud-an kung na-install ang PHP sodium pagdagan ang mando:

$ php -i | grep sodium

Nindot! Karon magpadayon sa sunod nga lakang.

Lakang 2: Paghimo Database para sa Magento

Ang sunod nga lakang naglakip sa paghimo sa usa ka database ug usa ka database user alang sa Magento. Busa, pag-log in sa MariaDB database server:

$ sudo mysql -u root -p

Paghimo og database ug database user pinaagi sa pagpadagan sa mosunod nga SQL query.

CREATE DATABASE magento_db;
CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'password';

Sunod, Ihatag ang mga pribilehiyo sa tiggamit sa database sa database sa Magento.

GRANT ALL ON magento_db.* TO 'magento_user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Sa katapusan, tugoti ang mga pagbag-o nga muepekto pinaagi sa pag-reload sa mga lamesa sa paghatag.

FLUSH PRIVILEGES;
EXIT;

Sa ubos usa ka summary sa mga pangutana sa SQL.

Lakang 3: I-install ug I-configure ang Elasticsearch sa Linux

Ang sunod nga lakang mao ang pag-install sa Elasticsearch. Kini usa ka open-source nga gipang-apod-apod nga search and analytics engine base sa Apache Lucene. Gigamit kini sa pagpangita, pagtipig ug pag-analisar sa daghang gidaghanon sa datos nga paspas ug sayon.

Ang Elasticsearch gisulat sa Java, ug isip usa ka kinahanglanon, kinahanglan una natong i-install ang Java. Atong i-install ang OpenJDK 11 nga mao ang pinakabag-o nga stable nga bersyon sa OpenJDK.

$ sudo dnf install openjdk-11-jdk -y

Kung kompleto na ang pag-instalar sa OpenJDK, susiha ang bersyon sa Java nga na-install.

$ java -version

Sunod, i-import ang Elasticsearch GPG key.

$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Kung nahuman na, paghimo usa ka repository alang sa Elasticsearch.

$ sudo vim /etc/yum.repos.d/elasticsearch.repo

Idikit ang mosunod nga sulod.

[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

I-save ang mga pagbag-o ug paggawas sa Elasticsearch repository file.

Karon gamita ang DNF package manager aron ma-install ang elasticsearch.

$ sudo dnf install elasticsearch

Ang pipila ka dugang nga configuration gikinahanglan alang sa Elasticsearch. Busa usba ang elasticsearch.yml file.

$ sudo vim etc/elasticsearch/elasticsearch.yml

Uncomment ang mga linya sa ubos ug siguroha nga ang network.host nga direktiba gitakda sa 127.0.0.1.

cluster.name: my-application
     node.name: node-1
     path.data: /var/lib/elasticsearch
     network.host: 127.0.0.1

I-save ang mga pagbag-o ug paggawas sa file.

Karon, himoa ang serbisyo sa Elasticsearch nga magsugod sa oras sa pag-boot ug sugdi ang serbisyo gamit ang mosunud nga mga mando.

$ sudo systemctl enable elasticsearch
$ sudo systemctl start elasticsearch

Unya pamatud-i ang kahimtang sa pagdagan sa Elasticsearch.

$ sudo systemctl status elasticsearch

Dugang pa, mahimo nimong sulayan ang Elasticsearch pinaagi sa pagpadala sa usa ka GET nga hangyo gamit ang curl command sama sa gipakita.

$ curl -X GET ‘localhost:9200’

Kinahanglan nimo makuha ang mosunod nga output sa JSON format.

Kini usa ka kumpirmasyon nga ang Elasticsearch malampuson nga na-install.

Lakang 4: I-download ug I-install ang Composer sa Linux

Ang sunod nga lakang mao ang pag-install sa kompositor nga usa ka tagdumala sa package sa PHP. Busa, una, i-download ang installer file.

$ sudo curl -sS https://getcomposer.org/installer | php

Dayon ibalhin ang file sa /usr/local/bin/ path.

$ sudo mv composer.phar /usr/local/bin/composer

Aron makumpirma ang pag-install, ipatuman ang mando:

$ composer -V

Lakang 5: I-download ug I-install ang Magento sa Linux

Ang sunod nga lakang mao ang wget command-line utility, i-download ang instalasyon nga file sama sa mosunod.

$ wget https://github.com/magento/magento2/archive/refs/tags/2.4.2.zip

Sa higayon nga ma-download, kuhaa ang sulod sa archive file.

$ unzip 2.4.2.zip

Dayon ibalhin ang decompressed directory ngadto sa root directory sa dokumento ug ilisan kini og magento2 alang sa kayano.

$ sudo mv magento2-* /var/www/html/magento2

Dayon pag-navigate sa direktoryo sa magento

$ cd /var/www/html/magento2

Ug gamita ang kompositor aron ma-install ang tanan nga mga dependency sa PHP.

$ sudo /usr/local/bin/composer install

PAHINUMDOM: Kinahanglan nga makakuha ka usa ka sayup kung gigamit ang sudo aron modagan ang kompositor. Kini usa lamang ka pasidaan tungod kay ang pagpadagan sa kompositor ingon nga gamut mahimong peligroso depende sa kung unsa ang gi-install. Busa padayon lang ug padagana kini bisan pa niana.

Kung ma-install na ang tanan nga mga dependency, itakda ang mga musunod nga pagtugot para sa direktoryo sa magento2.

$ sudo chown -R apache:apache /var/www/html/magento2
$ sudo chmod 755 /var/www/html/magento2

Sa gihapon sa direktoryo sa magento2, gamita ang mosunod nga dugang nga mga pagtugot.

$ sudo find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
$ sudo find var generated vendor pub/static pub/media app/etc -type d -exec 
$ sudo chown -R apache:apache .
$ sudo chmod u+x bin/magento

Nahuman na kami sa pagtakda sa mga pagtugot karon. Magpadayon kita ug i-configure ang Apache para sa Magento.

Lakang 6: Paghimo og Apache Virtual Host para sa Magento

Sunod, among i-configure ang Apache virtual host file alang sa pag-instalar sa Magento.

$ sudo vim /etc/httpd/conf.d/magento.conf

Idikit ang mosunod nga configuration file.

<VirtualHost *:80>
ServerAdmin [email 
ServerName example.com
DocumentRoot /var/www/html/magento2/
DirectoryIndex index.php

<Directory /var/www/html/magento2/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ErrorLog /var/log/httpd/magento_error.log
CustomLog /var/log/httpd/magento_access.log combined
</VirtualHost>

I-save ang mga pagbag-o ug paggawas sa file.

Dayon i-restart ang Apache HTTP server

$ sudo systemctl restart httpd

Lakang 7: I-install ang Magento ug I-set Up ang Magento Cron Jobs

Aron ma-install ang Magento, pagdagan ang mosunud nga mando nga nag-configure sa usa ka bag-ong tiggamit, usa ka tiggamit sa admin, ug daghang uban pang hinungdanon nga mga variable.

sudo -u apache bin/magento setup:install --admin-firstname="james" --admin-lastname="kiarie" --admin-email="[email " --admin-user="admin" --admin-password="[email " --db-name="magento_db" --db-host="localhost" --db-user="magento_user" --db-password="[email @321" --language=en_US --currency=USD --timezone=Europe/London  --cleanup-database --base-url=http://"linuxtechgeek.info"

Sa katapusan, makuha nimo ang mosunud nga output nga naghatag sa agianan sa panid sa admin.

Sa dili pa ma-access ang Magento gikan sa browser, i-configure ang mga palisiya sa SELinux sama sa gipakita.

$ sudo restorecon -R /var/www/magento
$ sudo setsebool -P httpd_unified 1

Dayon, ablihi ang browser ug i-type ang tibuok URL sama sa gipakita.

http://linuxtechgeek.info/admin_yquaor

I-redirect ka sa mosunod nga login page. Pag-sign in gamit ang mga kredensyal sa admin sama sa nauna nga gitakda ug i-klik ang 'Sign In'.

Gidala ka niini sa dashboard sa Magento.

Gikan dinhi, mahimo nimong ipadayon ang paghimo sa imong online shop, pagdumala sa mga presyo sa aytem, mga invoice ug pagsubay sa kalihokan sa kustomer taliwala sa daghang uban pang mga buluhaton. Malampuson namong na-install ang Magento sa Rocky Linux ug AlmaLinux.