Magento-ny Rocky Linux we AlmaLinux-da nädip gurmaly
PHP-de ýazylan Magento meşhur açyk çeşme we işewürlere onlaýn söwda arabasy bilen üpjün edýän köpugurly elektron söwda platformasydyr. Onuň işleýşini we ulanylyşyny ýokarlandyrmak üçin “Symfony” we “Laminas” ýaly dürli PHP çarçuwalaryny ulanýar.
Magento size onlaýn dükanyňyzy döretmäge, önümleriň katalogyny dolandyrmaga, amallara we hasap-fakturalara gözegçilik etmäge we müşderileriň satyn alyş häsiýetlerini yzarlamaga kömek edýän Dolandyryjy dolandyryş paneli bilen üpjün edýär.
Mundan başga-da, “Rocky Linux” we “AlmaLinux” -da Magento gurnamaga başlalyň.
Magento-ny üstünlikli gurmak üçin ilki bilen LAMP stakasy bolmaly:
- “Rocky Linux” -da LAMP Stackini nädip gurmaly
- AlmaLinux-da LAMP stakasyny nädip gurmaly
Şeýle hem, serweriň umumy IP adresini görkezýän doly hünärli domen adyňyzyň (FQDN) bardygyna göz ýetiriň. Bu gollanmada linuxtechgeek.info
domenini ulanarys.
Iň soňunda bolsa, düzülen sudo ulanyjysy bilen SSH elýeterliligiňize göz ýetiriň.
1-nji ädim: Goşmaça PHP modullaryny we beýleki baglylyklary guruň
Magento-ny gurnamak üçin zerur bolan php modullaryny gurmak bilen başlarys.
$ 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
Gurlandan soň, php.ini konfigurasiýa faýlyna başlaň we redaktirläň.
$ sudo vim /etc/php.ini
Aşakda görkezilen bahalaryň özüňizde barlygyny görkezýändigine göz ýetiriň. Elbetde, wagt guşagyňyza görä senäňizi kesgitläň.
memory_limit = 1024M upload_max_filesize = 256M zlib.output_compression = on max_execution_time = 18000 date.timezone = Europe/London
Üýtgeşmeleri ýazdyryň we çykyň.
Ondan soň, PHP natriý giňeltmesini - libsodium gurmaly. Bu şifrlemek funksiýalaryny aňsat we täsirli görnüşde üpjün edýän modul. Moduly gurmak üçin, gurnamagy goldamak üçin goşmaça paketleri we garaşlylygy üpjün edýän EPEL ammaryny gurmalydyrys.
EPEL gurmak üçin buýrugy ýerine ýetiriň:
$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Ondan soň goşmaça baglylyklary guruň.
$ sudo dnf install php-cli libsodium php-pear php-devel libsodium-devel make
Packhli paketler we garaşlylyklar ýerinde, aşakdaky buýruklary tertipde işledip, libsodium PHP modulyny guruň.
$ sudo pecl channel-update pecl.php.net $ sudo pecl install libsodium
Php.ini faýlyna dolan.
$ sudo vim /etc/php.ini
Aşakdaky setiri goşuň.
extension=sodium.so
Saklaň we çykyň.
PHP natriýiniň gurnalandygyny ýa-da ýokdugyny barlamak üçin buýrugy işlediň:
$ php -i | grep sodium
Gowy! Indiki ädime geçiň.
2-nji ädim: Magento üçin maglumat bazasyny dörediň
Indiki ädim Magento üçin maglumat bazasyny we maglumat bazasyny ulanyjyny döretmegi öz içine alýar. Şonuň üçin MariaDB maglumat bazasynyň serwerine giriň:
$ sudo mysql -u root -p
Aşakdaky SQL talaplaryny işledip, maglumat bazasy we maglumat bazasy ulanyjysyny dörediň.
CREATE DATABASE magento_db; CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'password';
Ondan soň, Magento maglumatlar bazasyndaky maglumat bazasynyň ulanyjysyna artykmaçlyklar beriň.
GRANT ALL ON magento_db.* TO 'magento_user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Netijede, üýtgeşmeleri grant tablisalaryny täzeden ýüklemek arkaly güýje girmäge mümkinçilik beriň.
FLUSH PRIVILEGES; EXIT;
Aşakda SQL talaplarynyň gysgaça mazmuny.
3-nji ädim: Linux-da Elasticsearch-y guruň we sazlaň
Indiki ädim “Elasticsearch” -y gurmakdyr. Bu, Apache Lusene esaslanýan açyk çeşme paýlanan gözleg we seljeriş motory. Uly göwrümli maglumatlary çalt we amatly gözlemek, saklamak we derňemek üçin ulanylýar.
Elastik gözleg Java-da ýazylýar we deslapky şert hökmünde ilki Java gurmaly. OpenJDK 11-iň iň soňky durnukly wersiýasy bolan OpenJDK 11 gurmakçy.
$ sudo dnf install openjdk-11-jdk -y
OpenJDK gurnamak gutaransoň, gurlan Java wersiýasyny barlaň.
$ java -version
Ondan soň, Elasticsearch GPG düwmesini import ediň.
$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Doneerine ýetirilenden soň, “Elasticsearch” üçin ammar dörediň.
$ sudo vim /etc/yum.repos.d/elasticsearch.repo
Aşakdaky mazmuny goýuň.
[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
Üýtgeşmeleri ýazdyryň we “Elasticsearch” ammar faýlyndan çykyň.
Indi elastik gözleg gurmak üçin DNF paket dolandyryjysyny ulanyň.
$ sudo dnf install elasticsearch
“Elasticsearch” üçin käbir goşmaça konfigurasiýa zerur. Şonuň üçin elasticsearch.yml faýlyny redaktirläň.
$ sudo vim etc/elasticsearch/elasticsearch.yml
Aşakdaky setirleri aýyryň we network.host direktiwasynyň 127.0.0.1-e gabat gelendigine göz ýetiriň.
cluster.name: my-application node.name: node-1 path.data: /var/lib/elasticsearch network.host: 127.0.0.1
Üýtgeşmeleri ýazdyryň we faýldan çykyň.
Indi, “Elasticsearch” hyzmatyny açmak wagtyndan başlap, aşakdaky buýruklary ulanyp hyzmaty başlaň.
$ sudo systemctl enable elasticsearch $ sudo systemctl start elasticsearch
Soňra “Elasticsearch” -yň işleýän ýagdaýyny barlaň.
$ sudo systemctl status elasticsearch
Mundan başga-da, görkezilişi ýaly curl buýrugyny ulanyp, GET haýyşyny iberip, Elasticsearch-ny synap bilersiňiz.
$ curl -X GET ‘localhost:9200’
Aşakdaky çykyşy JSON formatda almaly.
Bu, “Elasticsearch” -yň üstünlikli gurlandygyny tassyklaýar.
4-nji ädim: Kompozitory Linux-a göçürip alyň
Indiki ädim, PHP paket dolandyryjysy bolan kompozitor gurmak. Şonuň üçin ilki bilen gurnaýjy faýly göçürip alyň.
$ sudo curl -sS https://getcomposer.org/installer | php
Soňra faýly/usr/ýerli/bin/ýoluna geçiriň.
$ sudo mv composer.phar /usr/local/bin/composer
Gurluşy tassyklamak üçin buýrugy ýerine ýetiriň:
$ composer -V
5-nji ädim: Magento-ny Linux-a göçürip alyň
Indiki ädim, buýruk setiriniň peýdalylygyny wget etmek, gurnama faýlyny aşakdaky ýaly göçürip almak.
$ wget https://github.com/magento/magento2/archive/refs/tags/2.4.2.zip
Göçürilenden soň, arhiw faýlynyň mazmunyny çykaryň.
$ unzip 2.4.2.zip
Soňra dekompressirlenen katalogy resminamanyň kök katalogyna geçiriň we ýönekeýligi üçin magento2 adyna üýtgediň.
$ sudo mv magento2-* /var/www/html/magento2
Soňra magento katalogyna geçiň
$ cd /var/www/html/magento2
PHP baglylyklaryny gurmak üçin kompozitor ulanyň.
$ sudo /usr/local/bin/composer install
ÜNS BERI .: Kompozitory işletmek üçin sudo ulananyňyzda ýalňyşlyk almaly bolarsyňyz. Bu diňe duýduryş, sebäbi gurnalan zatlara baglylykda kök töwekgelçilikli bolup biler. Şonuň üçin dowam ediň we muňa garamazdan işlediň.
Dependhli baglylyklar gurlansoň, magento2 katalogy üçin aşakdaky rugsatlary belläň.
$ sudo chown -R apache:apache /var/www/html/magento2 $ sudo chmod 755 /var/www/html/magento2
Entegem magento2 katalogynda aşakdaky goşmaça rugsatlary ulanyň.
$ 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
Rugsatlary bellemek bilen gutardyk. Geliň, Magento üçin Apache düzeliň.
6-njy ädim: Magento üçin Apache wirtual hostyny dörediň
Ondan soň Magento gurmak üçin Apache wirtual host faýly düzeris.
$ sudo vim /etc/httpd/conf.d/magento.conf
Aşakdaky konfigurasiýa faýlyny goýuň.
<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>
Üýtgeşmeleri ýazdyryň we faýldan çykyň.
Soňra Apache HTTP serwerini täzeden açyň
$ sudo systemctl restart httpd
7-nji ädim: Magento guruň we Magento Cron işlerini düzüň
Magento-ny gurmak üçin täze ulanyjyny, administrator ulanyjysyny we başga-da birnäçe üýtgeýänleri düzýän aşakdaky buýrugy işlediň.
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"
Iň soňunda, administrator sahypasynyň ýoluny üpjün edýän aşakdaky çykyşy alarsyňyz.
Brauzerden Magento girmezden ozal, görkezilişi ýaly SELinux syýasatlaryny düzüň.
$ sudo restorecon -R /var/www/magento $ sudo setsebool -P httpd_unified 1
Soňra brauzeri açyň we görkezilişi ýaly doly URL ýazyň.
http://linuxtechgeek.info/admin_yquaor
Aşakdaky giriş sahypasyna ugrukdyrylarsyňyz. Öň görkezilişi ýaly administrator şahsyýet maglumatlaryny ulanyp giriň we Giriş -e basyň.
Bu sizi Magento dolandyryş paneline eltýär.
Bu ýerden onlaýn dükanyňyzy döredip, önümleriň bahalaryny, hasap-fakturalaryny dolandyryp we başga-da köp meseleleriň arasynda müşderiniň işjeňligini yzarlap bilersiňiz. Magento-ny Rocky Linux we AlmaLinux-da üstünlikli gurduk.