एंड्रॉयड

Ubuntu 18.04 पर magento 2 कैसे स्थापित करें

DigitalOcean | How to Add Custom Domain & Host your Websites on Digital Ocean Droplet Tutorial

DigitalOcean | How to Add Custom Domain & Host your Websites on Digital Ocean Droplet Tutorial

विषयसूची:

Anonim

Magento उद्यम-वर्ग ई-कॉमर्स प्लेटफ़ॉर्म का निर्माण कर रहा है जो लचीले और उपयोगकर्ता के अनुकूल इंटरफेस के साथ शक्तिशाली सुविधाओं के संयोजन के लिए ओपन सोर्स तकनीक पर बनाया गया है।

एंगेजिंग शॉपिंग एक्सपीरिएंस, फ्लेक्सिबल मॉड्यूलर आर्किटेक्चर और एंटरप्राइज-ग्रेड स्केलेबिलिटी और परफॉर्मेंस मैगनेटो जैसी सुविधाओं के साथ ज्यादातर ऑनलाइन मर्चेंट के लिए पसंद का एक प्लेटफॉर्म है।

इस ट्यूटोरियल में, हम आपको बताएंगे कि उबंटू 18.04 मशीन पर Magento 2.3 को कैसे स्थापित किया जाए। हम एक वेब सर्वर, नवीनतम PHP 7.2 और MySQL / MariaDB डेटाबेस सर्वर के रूप में Nginx का उपयोग करेंगे।

आवश्यक शर्तें

सुनिश्चित करें कि आप इस ट्यूटोरियल को जारी रखने से पहले निम्नलिखित आवश्यक शर्तें पूरी कर चुके हैं:

  • अपने सार्वजनिक सर्वर आईपी की ओर इशारा करते हुए एक डोमेन नाम रखें। हम example.com का उपयोग करेंगे। इन निर्देशों का पालन करके अपने Ubuntu सर्वर पर Nginx स्थापित किया गया है। उपयोगकर्ता की जानकारी को एन्क्रिप्ट करने के लिए आपके डोमेन के लिए SSL प्रमाणपत्र स्थापित किया गया है। आप इन निर्देशों का पालन करके एक मुफ्त लेट्स एनक्रिप्ट एसएसएल प्रमाणपत्र स्थापित कर सकते हैं।

Magento 2 कोड रिपॉजिटरी तक पहुंचने में सक्षम होने के लिए आपको प्रमाणीकरण कुंजी उत्पन्न करनी होगी। यदि आपके पास Magento Marketplace खाता नहीं है, तो आप यहाँ एक बना सकते हैं। एक बार जब आप खाता बना लेते हैं, तो कृपया इन निर्देशों की जांच करें कि प्रमाणीकरण कुंजियों का एक नया सेट कैसे बनाया जाए।

सिस्टम पैकेज को नवीनतम संस्करणों में अपडेट करें और अनज़िप उपयोगिता स्थापित करें:

sudo apt update && sudo apt upgrade sudo apt install unzip

MySQL डेटाबेस बनाना

यदि आपके पास MySQL या MariaDB आपके सर्वर पर स्थापित है, तो आप इस चरण को छोड़ सकते हैं, यदि आप टाइप करके Ubuntu के डिफ़ॉल्ट रिपॉजिटरी से MySQL 5.7 सर्वर पैकेज स्थापित नहीं कर सकते हैं:

sudo apt install mysql-server mysql-client नए MySQL प्रतिष्ठानों के लिए, अपने SQL सर्वर की सुरक्षा को बेहतर बनाने के लिए mysql_secure_installation कमांड चलाने की सिफारिश की जाती है।

निम्न आदेश का उपयोग करके MySQL शेल में लॉगिन करें:

sudo mysql

MySQL शेल के भीतर से, magento नाम का एक नया डेटाबेस बनाने के लिए निम्न SQL स्टेटमेंट चलाएं:

CREATE DATABASE magento;

इसके बाद, magento नाम का एक MySQL उपयोगकर्ता खाता बनाएं और निम्नलिखित कमांड को चलाकर उपयोगकर्ता को आवश्यक अनुमतियां प्रदान करें:

GRANT ALL ON magento.* TO 'magento'@'localhost' IDENTIFIED BY 'change-with-strong-password'; सुनिश्चित करें कि आप एक मजबूत पासवर्ड के change-with-strong-password

एक बार करने के बाद, टाइप करके MySQL कंसोल से बाहर निकलें:

EXIT;

सिस्टम उपयोगकर्ता बनाना

एक नया उपयोगकर्ता और समूह बनाएँ, जो मैगेंटो फ़ाइल सिस्टम का मालिक होगा, सादगी के लिए हम उपयोगकर्ता magento को नाम देंगे:

sudo useradd -m -U -r -d /opt/magento magento

magento समूह में www-data उपयोगकर्ता जोड़ें और /opt/magento निर्देशिका अनुमतियाँ बदलें ताकि Nginx Magento स्थापना तक पहुँच प्राप्त कर सके:

sudo usermod -a -G magento www-data sudo chmod 750 /opt/magento

PHP को स्थापित करना और कॉन्फ़िगर करना

PHP 7.2 जो कि Ubuntu 18.04 में डिफ़ॉल्ट PHP संस्करण है, पूरी तरह से समर्थित है और Magento 2.3 के लिए अनुशंसित है। चूँकि हम एक सर्वर के रूप में Nginx का उपयोग करेंगे, हम PHP-FPM पैकेज भी स्थापित करेंगे।

PHP और सभी आवश्यक PHP मॉड्यूल को स्थापित करने के लिए निम्नलिखित कमांड चलाएँ:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

स्थापना प्रक्रिया पूरी होने के बाद PHP-FPM सेवा अपने आप शुरू हो जाएगी, आप सेवा की स्थिति को प्रिंट करके इसे सत्यापित कर सकते हैं:

sudo systemctl status php7.2-fpm

आउटपुट को इंगित करना चाहिए कि fpm सेवा सक्रिय और चल रही है।

● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-12-12 15:47:16 UTC; 5s ago Docs: man:php-fpm7.2(8) Main PID: 16814 (php-fpm7.2) Status: "Ready to handle connections" Tasks: 3 (limit: 505) CGroup: /system.slice/php7.2-fpm.service

php.ini फ़ाइल को sed साथ संपादित करके आवश्यक और अनुशंसित PHP विकल्प सेट करें::

sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

अगले हमें magento उपयोगकर्ता के लिए एक FPM पूल बनाने की आवश्यकता है।

अपना टेक्स्ट संपादक खोलें और निम्न फ़ाइल बनाएं:

sudo nano /etc/php/7.2/fpm/pool.d/magento.conf /etc/php/7.2/fpm/pool.d/magento.conf

user = magento group = www-data listen.owner = magento listen.group = www-data listen = /var/run/php/php7.2-fpm-magento.sock pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = /

परिवर्तनों को प्रभावी करने के लिए PHP-FPM सेवा को पुनरारंभ करें:

systemctl restart php7.2-fpm

सत्यापित करें कि क्या PHP सॉकेट निम्नलिखित ls कमांड चलाकर सफलतापूर्वक बनाया गया था:

ls -al /var/run/php/php7.2-fpm-magento.sock

आउटपुट कुछ इस तरह दिखना चाहिए:

srw-rw---- 1 magento www-data 0 Dec 12 16:07 /var/run/php/php7.2-fpm-magento.sock=

कंपोजर स्थापित करना

संगीतकार PHP के लिए एक निर्भरता प्रबंधक है और हम इसका उपयोग Magento के कोर को डाउनलोड करने और सभी आवश्यक Magento घटकों को स्थापित करने के लिए करेंगे।

विश्व स्तर पर संगीतकार स्थापित करने के लिए, कर्लर के साथ कम्पोज़र इंस्टॉलर डाउनलोड करें और फ़ाइल को /usr/local/bin निर्देशिका में स्थानांतरित करें:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

कम्पोज़र संस्करण को प्रिंट करके इंस्टॉलेशन को सत्यापित करें:

composer --version

आउटपुट कुछ इस तरह दिखना चाहिए:

Composer version 1.8.0 2018-12-03 10:31:16

Magento की स्थापना

Magento को स्थापित करने के कई तरीके हैं। Github रिपॉजिटरी से Magento को स्थापित करने से बचें क्योंकि यह संस्करण विकास के लिए है और उत्पादन प्रतिष्ठानों के लिए नहीं।

इस लेख को लिखने के समय, Magento का नवीनतम स्थिर संस्करण 2.3.0 संस्करण है। इस ट्यूटोरियल में, हम संगीतकार का उपयोग करके उनके रिपॉजिटरी से Magento स्थापित करेंगे।

टाइप करके उपयोगकर्ता magento पर स्विच करें:

sudo su - magento

Magento फ़ाइलों को / ऑप्ट / magento / public_html निर्देशिका में डाउनलोड करके इंस्टालेशन शुरू करें:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /opt/magento/public_html

आपको एक्सेस कुंजी दर्ज करने के लिए प्रेरित किया जाएगा, अपने Magento मार्केटप्लेस खाते से कुंजियों की प्रतिलिपि बनाएँ और उन्हें उन्हें स्थित करें। उन्हें फ़ाइल में संग्रहीत करना है, इसलिए बाद में अपनी स्थापना को अपडेट करते समय आपको फिर से उसी कुंजी को जोड़ना नहीं पड़ता है।

Authentication required (repo.magento.com): Username: e758ec1745d190320ca246e4e832e12c Password: Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ? Y

ऊपर दिया गया आदेश सभी आवश्यक PHP संकुल लाएगा। इस प्रक्रिया में कुछ मिनट लग सकते हैं और यदि यह सफल होता है तो आउटपुट का अंत निम्न जैसा दिखना चाहिए:

Writing lock file Generating autoload files

प्रोजेक्ट बनने के बाद हम Magento की स्थापना शुरू कर सकते हैं। हम Magento कमांड लाइन से या वेब सेटअप विज़ार्ड का उपयोग करके स्थापित कर सकते हैं। इस ट्यूटोरियल में, हम कमांड लाइन का उपयोग करके Magento स्थापित करेंगे।

हम Magento स्टोर को स्थापित करने के लिए निम्नलिखित विकल्पों का उपयोग करेंगे:

  • आधार और आधार सुरक्षित URL https://example.com सेट हैं, इसे अपने डोमेन से बदल दें। मैगेंटो व्यवस्थापक:
    • पहले और आखिरी नाम के रूप में John Doe [email protected] ईमेल के रूप में। उपयोगकर्ता नाम के रूप में john और पासवर्ड के रूप में j0hnP4ssvv0rD
    डेटाबेस का नाम magento , उपयोगकर्ता नाम magento , पासवर्ड change-with-strong-password और डेटाबेस सर्वर वेब सर्वर के रूप में एक ही मेजबान पर है। en_US , US अंग्रेजी एक डिफ़ॉल्ट भाषा के रूप में। डिफ़ॉल्ट मुद्रा के रूप में USD डॉलर। समय क्षेत्र के रूप में America/Chicago
आप यहां सभी इंस्टॉलेशन विकल्प पा सकते हैं।

Magento के लिए बदलें ~/public_html निर्देशिका:

cd ~/public_html

स्थापना शुरू करने के लिए निम्नलिखित कमांड चलाएँ:

php bin/magento setup:install --base-url=https://example.com/ \ --base-url-secure=https://example.com/ \ --admin-firstname="John" \ --admin-lastname="Doe" \ --admin-email="[email protected]" \ --admin-user="john" \ --admin-password="j0hnP4ssvv0rD" \ --db-name="magento" \ --db-host="localhost" \ --db-user="magento" \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --db-password="change-with-strong-password" पासवर्ड ( j0hnP4ssvv0rD ) को और अधिक सुरक्षित करने के लिए मत भूलना।

इस प्रक्रिया में कुछ मिनट लग सकते हैं और एक बार पूरा होने के बाद आपको एक संदेश के साथ प्रस्तुत किया जाएगा जिसमें URI शामिल हैं Magento के व्यवस्थापक डैशबोर्ड।

: Magento installation complete.: Magento Admin URI: /admin_13nv5k Nothing to import.

मैजेंटो क्रॉस्टैब बनाना

मैगेंटो री-इंडेक्सिंग, नोटिफिकेशन, साइटमैप, ईमेल और अधिक जैसे कार्यों को शेड्यूल करने के लिए क्रोन जॉब्स का उपयोग करता है।

Magento बनाने के लिए crontab निम्नलिखित कमांड को magento उपयोगकर्ता के रूप में चलाते हैं:

php ~/public_html/bin/magento cron:install

Crontab has been generated and saved

सत्यापित करें कि क्रॉस्टैब टाइप करके स्थापित किया गया है:

crontab -l

#~ MAGENTO START adc062915d7b30804a2b340095af072d * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /opt/magento/public_html/var/log/magento.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/update/cron.php >> /opt/magento/public_html/var/log/update.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento setup:cron:run >> /opt/magento/public_html/var/log/setup.cron.log #~ MAGENTO END adc062915d7b30804a2b340095af072d

Nginx को कॉन्फ़िगर करना

अब तक, आपके पास पहले से ही अपने उबंटू सर्वर पर एसएसएल सर्टिफिकेट के साथ नग्नेक्स होना चाहिए, अगर इस ट्यूटोरियल के लिए आवश्यक शर्तें न देखें।

हम Magento के साथ डिफ़ॉल्ट Nginx कॉन्फ़िगरेशन को शामिल करने जा रहे हैं।

अपने sudo उपयोगकर्ता पर स्विच करें, अपना टेक्स्ट संपादक खोलें और निम्न फ़ाइल बनाएं:

sudo nano /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com

upstream fastcgi_backend { server unix:/var/run/php/php7.2-fpm-magento.sock; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /opt/magento/public_html/nginx.conf.sample; } Example.com को अपने Magento डोमेन के साथ बदलना न भूलें और SSL सर्टिफ़िकेट फ़ाइलों के लिए सही पथ सेट करें। इस कॉन्फ़िगरेशन में उपयोग किए गए स्निपेट्स इस गाइड में बनाए गए हैं।

Nginx सेवा को पुनरारंभ करने से पहले यह सुनिश्चित करने के लिए एक परीक्षण करें कि कोई सिंटैक्स त्रुटियां न हों:

sudo nginx -t

यदि कोई त्रुटि नहीं है तो आउटपुट इस तरह दिखना चाहिए:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

अंत में, टाइप करके Nginx सेवा को पुनरारंभ करें:

sudo systemctl restart nginx

स्थापना का सत्यापन करना

अपना ब्राउज़र खोलें, अपना डोमेन लिखें और यह मानकर कि इंस्टालेशन सफल है, निम्न के समान स्क्रीन दिखाई देगी:

अब आप Magento के व्यवस्थापक URI पर जा सकते हैं, व्यवस्थापक उपयोगकर्ता के रूप में लॉग इन कर सकते हैं और अपनी नई Magento स्थापना को अनुकूलित करना शुरू कर सकते हैं।

निष्कर्ष

बधाई हो, आपने अपने Ubuntu 18.04 सर्वर पर सफलतापूर्वक Magento 2.3 स्थापित किया है। अब आप अपने स्टोर को कस्टमाइज़ करना शुरू कर सकते हैं।

Magento 2.3 डेवलपर प्रलेखन आपके Magento की स्थापना को प्रबंधित करने के तरीके के बारे में अधिक जानने के लिए एक अच्छी शुरुआत है।

ubuntu magento mysql mariadb php nginx कंपोजर ईकॉमर्स