GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat Shopware 6 s NGINX a Lets Encrypt na CentOS 8

Shopware je bezplatná platforma s otevřeným zdrojovým kódem, která vám pomůže založit vlastní web pro elektronické obchodování a podpořit tak vaše online podnikání. Poskytuje spoustu užitečných nástrojů, které vám pomohou vytvořit a přizpůsobit plně responzivní internetový obchod. Je velmi podobný Magentu. Ve srovnání s Magento je Shopware velmi výkonná, snadno použitelná a flexibilní aplikace. Díky modernímu uživatelskému rozhraní vám pomůže snadno vytvářet a spravovat obsah a produkty z jakéhokoli zařízení.

V tomto tutoriálu vám ukážeme, jak nainstalovat Shopware s Nginx a Let's Encrypt SSL na CentOS 8.

Předpoklady

  • Server se systémem CentOS 8.
  • Platný název domény s adresou IP vašeho serveru.
  • Na vašem serveru je nakonfigurováno heslo uživatele root.

Instalovat LEMP Server

Shopware běží na webovém serveru a je postaven na PHP s komponentami Symfony a Zend a jako backend databáze používá MySQL nebo MariaDB. Takže budete muset nainstalovat Nginx, MariaDB, PHP a další rozšíření na váš server. Všechny je můžete nainstalovat pomocí následujícího příkazu:

dnf install nginx mariadb-server php php-cli php-intl php-fpm php-common php-mysqli php-curl php-json php-zip php-gd php-xml php-mbstring php-opcache unzip -y 

Jakmile jsou všechny balíčky nainstalovány, spusťte službu Nginx, MariaDB a PHP-FPM a povolte jim spuštění při restartu systému pomocí následujícího příkazu:

systemctl spustit mariadb
systemctl povolit mariadb
systemctl spustit nginx
systemctl spustit php-fpm
systemctl povolit nginx
systemctl povolit php-fpm

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Konfigurace PHP-FPM

Ve výchozím nastavení je PHP-FPM nakonfigurováno tak, aby běželo jako uživatel a skupina Apache. Budete jej tedy muset nakonfigurovat, aby běžel jako uživatel a skupina Nginx. Můžete to udělat úpravou souboru /etc/php-fpm.d/www.conf:

nano /etc/php-fpm.d/www.conf

Změňte následující řádky:

user =nginx group =nginx 

Uložte a zavřete soubor, poté vytvořte adresář relace a nastavte správné vlastnictví pomocí následujícího příkazu:

mkdir -p /var/lib/php/session 
chown -R nginx:nginx /var/lib/php/session

Dále upravte soubor php.ini a dolaďte některá doporučená nastavení:

nano /etc/php.ini

Změňte následující řádky:

memory_limit =512Mupload_max_filesize =20Mdate.timezone =Asie/Kolkata

Uložte a zavřete soubor a poté restartujte službu PHP-FPM, aby se změny projevily:

systemctl restart php-fpm

Vytvoření databáze pro Shopware

Dále budete muset vytvořit databázi a uživatele pro Shopware. Nejprve se připojte k MariaDB pomocí následujícího příkazu:

mysql

Po připojení vytvořte databázi a uživatele pomocí následujícího příkazu:

MariaDB [(none)]> VYTVOŘIT DATABÁZI shopware;
MariaDB [(none)]> UDĚLEJTE VŠE NA shopware.* NA 'shopware' IDENTIFIKOVANÉ PODLE 'hesla';

Dále vyprázdněte oprávnění a ukončete MariaDB pomocí následujícího příkazu:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Stáhnout Shopware

Dále si budete muset stáhnout nejnovější verzi Shopware pro jeho oficiální web. Nejprve vytvořte adresář pro Shopware v kořenovém adresáři Nginx:

mkdir /var/www/html/shopware

Dále si stáhněte Shopware pomocí následujícího příkazu:

wget https://www.shopware.com/en/Download/redirect/version/sw6/file/install_v6.3.5.0_ba08dbfc07784b5cefe7837f2abbda69dbf5b8b7.zip -O shopware.zip

Po dokončení stahování rozbalte stažený soubor do adresáře shopware:

rozbalte shopware.zip -d /var/www/html/shopware

Dále nastavte správná oprávnění a vlastnictví pomocí následujícího příkazu:

chown -R nginx:nginx /var/www/html/shopware
chmod -R 775 /var/www/html/shopware

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Konfigurace Nginx pro Shopware

Dále vytvořte konfigurační soubor virtuálního hostitele Nginx pro Shopware pomocí následujícího příkazu:

nano /etc/nginx/conf.d/shopware.conf

Přidejte následující řádky:

server { poslouchat 80; # Handle / to index.php index index.php; # Název našeho serveru název_serveru shopware.example.com; # Kde je kód umístěn root /var/www/html/shopware/public; # Potřebné pro umístění instalace / aktualizace Shopware / obnova / instalace { index index.php; try_files $uri /recovery/install/index.php$is_args$args; } umístění /recovery/update/ { if (!-e $request_filename){ rewrite . /recovery/update/index.php poslední; } } # Přepošlete jakýkoli nenalezený soubor do index.php. Také umožňuje mít krásné adresy URL jako /homemade-products/ location / { try_files $uri /index.php$is_args$args; } # Nechat php-fpm zpracovat umístění souborů .php ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; zahrnout fastcgi.conf; fastcgi_param HTTP_PROXY ""; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; fastcgi_read_timeout 300s; client_body_buffer_size 128k; fastcgi_pass unix:/run/php-fpm/www.sock; http2_push_preload on; }}

Uložte a zavřete soubor a poté pomocí následujícího příkazu ověřte, zda Nginx neobsahuje nějakou chybu syntaxe:

nginx -t

Měli byste získat následující výstup:

nginx:syntaxe konfiguračního souboru /etc/nginx/nginx.conf je oknginx:konfigurační soubor /etc/nginx/nginx.conf test byl úspěšný

Poté restartujte službu Nginx, aby se změny aplikovaly:

systemctl restart nginx

Stav Nginx můžete také ověřit pomocí příkazu níže:

stav systemctl nginx

Měli byste získat následující výstup:

? nginx.service – HTTP a reverzní proxy server nginx Načteno:načteno (/usr/lib/systemd/system/nginx.service; zakázáno; přednastaveno dodavatelem:zakázáno) Drop-In:/usr/lib/systemd/system/nginx. service.d ??php-fpm.conf Aktivní:aktivní (běží) od Út 2021-02-02 00:40:04 EST; před 19 s Proces:76059 ExecStart=/usr/sbin/nginx (kód=ukončeno, stav=0/ÚSPĚCH) Proces:76057 ExecStartPre=/usr/sbin/nginx -t (kód=ukončeno, stav=0/ÚSPĚCH) Proces:76054 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (kód=ukončeno, stav=0/ÚSPĚCH) Hlavní PID:76060 (nginx) Úkoly:3 (limit:12523) Paměť:5,5M CGroup:/ system.slice/nginx.service ??76060 nginx:hlavní proces /usr/sbin/nginx ??76061 nginx:pracovní proces ??76062 nginx:pracovní procesFeb 02 00:40:04 centos8 systemd[1]:Zastaveno HTTP nginx a reverzní proxy server.Feb 02 00:40:04 centos8 systemd[1]:Spouštění nginx HTTP a reverzního proxy serveru...Feb 02 00:40:04 centos8 nginx[76057]:nginx:konfigurační soubor /etc/ Syntaxe nginx/nginx.conf je okFeb 02 00:40:04 centos8 nginx[76057]:nginx:konfigurační soubor /etc/nginx/nginx.conf test je úspěšný 2. února 00:40:04 centos8 systemd[1]:Spuštěno HTTP a reverzní proxy server.

Konfigurovat SELinux a bránu firewall

Ve výchozím nastavení je SELinux povolen v CentOS 8. Budete tedy muset nakonfigurovat kontext SELinux pro Shopware. Můžete jej nakonfigurovat pomocí následujícího příkazu:

setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/shopware

Dále povolte port 80 a 443 přes firewalld pomocí následujícího příkazu:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Přístup k webovému rozhraní Shopware

Nyní otevřete webový prohlížeč a zadejte adresu URL http://shopware.example.com .

Vyberte jazyk a klikněte na Další knoflík. Ujistěte se, že byly splněny všechny požadavky, a poté klikněte na Další knoflík. Měli byste vidět následující stránku:

Vyjádřete souhlas s VOP a klikněte na Další knoflík. Měli byste vidět následující stránku:

Zadejte svou databázi, uživatelské jméno, heslo a klikněte na Start instalace knoflík. Po dokončení instalace byste měli vidět následující stránku:

Klikněte na další stránku. Budete požádáni o zadání názvu obchodu, e-mailové adresy, měny, země, uživatelského jména správce, hesla a klikněte na Další knoflík. Budete přesměrováni na řídicí panel Shopware:

Zadejte všechny informace a klikněte na tlačítko Další. Měli byste vidět následující stránku:

Nainstalujte požadované jazykové pluginy a klikněte na Další knoflík. Měli byste vidět následující stránku:

Nainstalujte demo data nebo toto přeskočte a klikněte na Další knoflík. Měli byste vidět následující stránku:

Klikněte na Konfigurovat později . Měli byste vidět následující stránku:

Klikněte na Přeskočit knoflík. Měli byste vidět následující stránku:

Klikněte na Další Měla by se zobrazit následující stránka:

Klikněte na Přeskočit knoflík. Měli byste vidět následující stránku:

Klikněte na Dokončit knoflík. Měli byste vidět uvítací stránku Shopware:

Bezpečný Shopware s Let's Encrypt SSL

Dále budete muset do svého systému nainstalovat nástroj Certbot, abyste si mohli stáhnout a nainstalovat Let's Encrypt SSL pro doménu Let's Chat.

Klienta Certbot můžete nainstalovat pomocí následujícího příkazu:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot- auto
chmod 0755 /usr/local/bin/certbot-auto

Dále získejte a nainstalujte certifikát SSL pro vaši doménu lets pomocí následujícího příkazu:

certbot-auto --nginx -d shopware.example.com

Výše uvedený příkaz nejprve nainstaluje všechny požadované závislosti na váš server. Po instalaci budete požádáni o zadání e-mailové adresy a přijetí podmínek služby, jak je uvedeno níže:

Ukládání protokolu ladění do /var/log/letsencrypt/letsencrypt.log Vybrané pluginy:Authenticator nginx, Installer nginxZadejte e-mailovou adresu (používá se pro naléhavá upozornění na obnovení a zabezpečení) (Zadejte „c“ pro zrušení):[email protected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Přečtěte si podmínky služby na https://letsencrypt.org /documents/LE-SA-v1.2-November-15-2017.pdf. Chcete-li se zaregistrovat na serveru ACME na adrese https://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel:A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Byli byste ochotni sdílet svou e-mailovou adresu s Electronic FrontierFoundation, zakládajícím partnerem projektu Let's Encrypt a neziskovou organizací, která vyvíjí Certbot? Rádi bychom vám zaslali e-mail o naší práci na šifrování webu, novinkách EFF, kampaních a způsobech podpory digitální svobody.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(N)ne:YZískání nového certifikátu Provedení následujících výzev:http-01 výzva pro shopware.example.comČekání na ověření...Čištění up callsNasazení certifikátu na VirtualHost /etc/nginx/conf.d/shopware.conf

Dále vyberte, zda chcete přesměrovat provoz HTTP na HTTPS, jak je uvedeno níže:

Zvolte prosím, zda chcete přesměrovat provoz HTTP na HTTPS a odebrat přístup HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1:Žádné přesměrování - Nedělejte žádné další změny v konfiguraci webového serveru.2:Přesměrování - Proveďte přesměrování všech požadavků na zabezpečený přístup HTTPS. Vyberte toto pro nové weby, nebo pokud jste si jisti, že váš web funguje na HTTPS. Tuto změnu můžete vrátit zpět úpravou konfigurace vašeho webového serveru.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vyberte příslušné číslo [1-2] a poté [enter] (zrušte stisknutím 'c'):2

Zadejte 2 a pokračujte stisknutím klávesy Enter. Po dokončení instalace byste měli vidět následující výstup:

Přesměrování veškerého provozu na portu 80 na ssl v /etc/nginx/conf.d/shopware.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Gratulujeme! Úspěšně jste povolili https://shopware.example.comMěli byste otestovat svou konfiguraci na:https://www.ssllabs.com/ssltest/analyze.html?d=shopware.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - DŮLEŽITÉ POZNÁMKY:- Gratulujeme! Váš certifikát a řetězec byly uloženy na:/etc/letsencrypt/live/shopware.example.com/fullchain.pem Váš soubor klíče byl uložen na:/etc/letsencrypt/live/shopware.example.com/privkey.pem Váš platnost certifikátu vyprší 2021-04-2. Chcete-li v budoucnu získat novou nebo vylepšenou verzi tohoto certifikátu, jednoduše znovu spusťte certbot-auto s možností „certonly“. Chcete-li neinteraktivně obnovit *všechny* své certifikáty, spusťte „certbot-auto renew“ – Pokud se vám Certbot líbí, zvažte prosím podporu naší práce:Darováním pro ISRG / Let's Encrypt:https://letsencrypt.org/donate Darováním pro EFF:https://eff.org/donate-le

Nyní můžete k Shopware přistupovat bezpečně pomocí adresy URL https://shopware.example.com.

Závěr

Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali Shopware s Nginx a Let's Encrypt SSL na CentOS 8. Nyní můžete snadno hostovat svůj vlastní online obchod pomocí Shopware. Neváhejte se mě zeptat, pokud máte nějaké otázky.


Cent OS
  1. Jak nainstalovat Nextcloud s Nginx a PHP 7.3 na CentOS 8

  2. Jak nainstalovat ownCloud 9.1 s Nginx a MariaDB na CentOS 7

  3. Jak nainstalovat Let’s Encrypt na CentOS 8 s Nginx

  1. Jak nainstalovat Nextcloud s Nginx a PHP7-FPM na CentOS 7

  2. Jak nainstalovat Laravel 5.x s Nginx a PHP-FPM 7.1 na CentOS 7

  3. Jak nainstalovat Shopware s NGINX a nechat šifrovat na Ubuntu 18.04 LTS

  1. Jak nainstalovat Shopware s NGINX a Lets Encrypt na CentOS 7

  2. Jak nainstalovat Shopware s NGINX a Lets Encrypt na Fedoře 30

  3. Jak nainstalovat WonderCMS s Nginx a nechat šifrovat SSL na CentOS 7