GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Shopware 6 s Nginx a nechat šifrovat SSL na Ubuntu 20.04

Shopware CE je bezplatná a open source platforma elektronického obchodu napsaná v Symfony a Vue.js. Je založen na poměrně moderním technologickém zásobníku a velmi dobrou alternativou k jiné eCommerce aplikaci, jako je Magento. Je to velmi výkonná a flexibilní aplikace a dává vám svobodu rychle a snadno využít svůj růstový potenciál a zaměřit se na perfektní zákaznickou zkušenost. Poskytuje jednoduché a snadno použitelné administrátorské rozhraní pro správu klientů a objednávek. Umožňuje vám spravovat ceny produktů, měnit nebo aktualizovat témata, navrhovat e-mailové šablony pro marketing vašich produktů a generovat statistické výsledky.

V tomto tutoriálu vám ukážeme, jak nainstalovat Shopware CE s Nginx a Let's Encrypt na Ubuntu 20.04.

Předpoklady

  • Server se systémem Ubuntu 20.04 s minimálně 4 GB RAM.
  • Platný název domény odkazovaný na váš server.
  • Na vašem serveru je nakonfigurováno heslo uživatele root.

Instalovat Nginx a MariaDB

Nejprve nainstalujte webový server Nginx a databázový server MariaDB pomocí následujícího příkazu:

apt-get install nginx mariadb-server -y

Jakmile jsou oba balíčky nainstalovány, spusťte službu Nginx a MariaDB a povolte jim spuštění při spuštění systému:

systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb

Instalace PHP a dalších komponent

Shopware 6 podporuje PHP verze mezi 7.2 a 7.3. Budete tedy muset nainstalovat PHP spolu s dalšími knihovnami ve vašem systému.

Nejprve přidejte úložiště PHP do svého systému pomocí následujícího příkazu:

apt-get install software-properties-common -y
add-apt-repository ppa:ondrej/php

Jakmile je úložiště přidáno, nainstalujte PHP s dalšími knihovnami pomocí následujícího příkazu:

apt-get install php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-curl php7.2-json php7.2-zip php7.2-gd php7.2-xml php7.2-mbstring php7.2-intl php7.2-opcache git unzip socat curl bash-completion -y

Jakmile jsou všechny balíčky nainstalovány, upravte soubor php.ini a dolaďte některá požadovaná nastavení:

nano /etc/php/7.2/fpm/php.ini

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

memory_limit = 512M
upload_max_filesize = 20M
max_execution_time = 300

Po dokončení uložte a zavřete soubor.

Dále budete muset do svého systému nainstalovat zavaděč IonCube.

Nejprve si jej stáhněte pomocí následujícího příkazu:

wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Po stažení rozbalte stažený soubor pomocí následujícího příkazu:

tar xfz ioncube_loaders_lin_x86-64.tar.gz

Dále vyhledejte cestu k adresáři rozšíření PHP:

php -i | grep extension_dir

Měli byste vidět následující výstup:

extension_dir => /usr/lib/php/20190902 => /usr/lib/php/20190902

Dále zkopírujte zavaděč IonCube do adresáře rozšíření PHP:

cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20180731/

Dále upravte soubor php.ini a definujte zavaděč IonCube:

nano /etc/php/7.2/fpm/php.ini

Do sekce [PHP] přidejte následující řádek:

zend_extension = /usr/lib/php/20180731/ioncube_loader_lin_7.2.so

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

systemctl restart php7.2-fpm

Konfigurace databáze MariaDB

Nejprve zabezpečte instalaci MariaDB a nastavte heslo uživatele root pomocí následujícího skriptu:

mysql_secure_installation

Odpovězte na všechny otázky, jak je uvedeno níže:

Enter current password for root (enter for none): 
Set root password? [Y/n] Y
New password: 
Re-enter new password: 
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Jakmile budete hotovi, přihlaste se do prostředí MariaDB pomocí následujícího příkazu:

mysql -u root -p

Zadejte své root heslo MariaDB a poté vytvořte databázi a uživatele pro Shopware:

MariaDB [(none)]> CREATE DATABASE shopwaredb;
MariaDB [(none)]> GRANT ALL ON shopwaredb.* TO 'shopware'@'localhost' IDENTIFIED BY 'password';

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.

Instalovat Composer

Composer je správce závislostí pro PHP. Používá se k instalaci všech PHP závislostí potřebných k instalaci Shopware.

Můžete jej nainstalovat pomocí příkazu curl, jak je znázorněno níže:

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

Po instalaci ověřte verzi aplikace Composer pomocí následujícího příkazu:

composer --version

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

Composer version 1.10.7 2020-06-03 10:03:56

Stáhnout Shopware

Nejprve vytvořte adresář pro Shopware v kořenovém adresáři webu Nginx:

mkdir /var/www/html/shopware

Dále změňte adresář na shopware a stáhněte si nejnovější verzi Shopware pomocí následujícího příkazu:

cd /var/www/html/shopware
wget https://www.shopware.com/en/Download/redirect/version/sw6/file/install_6.2.2_1592398977.zip

Po stažení stažený soubor rozbalte pomocí následujícího příkazu:

unzip install_6.2.2_1592398977.zip

Dále nainstalujte všechny závislosti PHP pomocí následujícího příkazu:

composer install

Dále změňte vlastnictví adresáře shopware a udělte správná oprávnění pomocí následujícího příkazu:

chown -R www-data:www-data /var/www/html/shopware
chmod -R 755 /var/www/html/shopware

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

Konfigurace Nginx pro Shopware

Nejprve vytvořte nový konfigurační soubor virtuálního hostitele Nginx pro Shopware:

nano /etc/nginx/sites-available/shopware.conf

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

server {
    listen 80;

    index index.php index.html;
    server_name shopware.linuxbuz.com;
    root /var/www/html/shopware/public;

    location /recovery/install {
        index index.php;
        try_files $uri /recovery/install/index.php$is_args$args;
    }

    location /recovery/update/ {
        location /recovery/update/assets {
        }
        if (!-e $request_filename){
            rewrite . /recovery/update/index.php last;
        }
    }

    location / {
        try_files $uri /index.php$is_args$args;
    }

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi.conf;
        fastcgi_param HTTP_PROXY "";
        fastcgi_buffers 8 16k;
        fastcgi_buffer_size 32k;
        client_max_body_size 24M;
        client_body_buffer_size 128k;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        http2_push_preload on;
    }
}

Uložte a zavřete soubor a poté povolte soubor virtuálního hostitele Shopware pomocí následujícího příkazu:

ln -s /etc/nginx/sites-available/shopware.conf /etc/nginx/sites-enabled/

Dále pomocí následujícího příkazu zkontrolujte Nginx, zda neobsahuje nějakou chybu syntaxe:

nginx -t

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

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

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

systemctl reload nginx

Přístup k průvodci instalací Shopware

V tomto okamžiku je ve vašem systému nainstalován Shopware. Nyní otevřete webový prohlížeč a zadejte adresu URL http://shopware.linuxbuz.com. Měli byste vidět webového průvodce instalací Shopware:

Vyberte jazyk a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Ujistěte se, že jsou nainstalovány všechny požadované závislosti, a poté klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Přijměte smluvní podmínky a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Zadejte podrobnosti o databázi a klikněte na Spustit instalaci knoflík. Po úspěšném dokončení instalace byste měli vidět následující obrazovku:

Nyní klikněte na Další knoflík. Měli byste vidět konfigurační obrazovku Shopware:

Zadejte název obchodu, e-mail, zemi, e-mail správce, uživatelské jméno správce, heslo a klikněte na Další knoflík. Budete přesměrováni na obrazovku řídicího panelu Shopware:

Klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Nainstalujte požadovaná data a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Vyberte požadovaného e-mailového agenta a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Vyberte požadovanou možnost a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Nakonfigurujte svůj PayPal nebo klikněte na Přeskočit knoflík. Měli byste vidět následující obrazovku:

Nakonfigurujte své přihlašovací údaje PayPal nebo klikněte na Přeskočit knoflík. Měli byste vidět následující obrazovku:

Vyberte svou oblast a klikněte na Další knoflík. Měli byste vidět následující obrazovku:

Klikněte na Přeskočit knoflík. Jakmile je Shopware nakonfigurován, měli byste vidět následující obrazovku:

Klikněte na Dokončit knoflík. Na následující obrazovce byste měli vidět řídicí panel Shopware:

Bezpečný Shopware s Let's Encrypt

Než začnete, budete muset do svého systému nainstalovat klienta Certbot, abyste mohli nainstalovat a spravovat Let's Encrypt SSL. Můžete jej nainstalovat pomocí následujícího příkazu:

apt-get install certbot python3-certbot-nginx -y

Po instalaci klienta Certbot spusťte následující příkaz ke stažení a instalaci Let's Encrypt SSL pro váš web:

certbot --nginx -d shopware.linuxbuz.com

Zadejte svou e-mailovou adresu a přijměte podmínky služby, jak je uvedeno níže:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for shopware.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/shopware.conf

Vyberte, zda chcete přesměrovat provoz HTTP na HTTPS:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Zadejte 2 a stiskněte Enter pro zahájení procesu. Po dokončení instalace byste měli vidět následující výstup:

Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/shopware.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://shopware.linuxbuz.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=shopware.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/shopware.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/shopware.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-09-22. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

V tuto chvíli jsou vaše webové stránky Shopware zabezpečeny pomocí Let's Encrypt SSL. Nyní můžete bezpečně přistupovat na svůj web pomocí adresy URL https://shopware.linuxbuz.com.

Závěr

Gratulujeme! úspěšně jste nainstalovali Shopware s Nginx a Let's Encrypt SSL na Ubuntu 20.04. Nyní můžete začít zakládat svůj vlastní online obchod pomocí Shopware. Pokud máte nějaké dotazy, neváhejte se mě zeptat.


Ubuntu
  1. Jak nainstalovat Nextcloud s Nginx a nechat šifrovat SSL na Ubuntu 20.04 LTS

  2. Jak nainstalovat Magento 2 s Nginx a nechat šifrovat SSL na Ubuntu 20.04 LTS

  3. Jak nainstalovat Magento 2 s Nginx a Letsencrypt na Ubuntu 18.04

  1. Jak nainstalovat Drupal 8 s Nginx, PHP-FPM a SSL na Ubuntu 15.10

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

  3. Nainstalujte Automad CMS s Nginx a Lets Encrypt SSL na Ubuntu 18.04

  1. Jak nainstalovat WordPress s Nginx a nechat šifrovat SSL na CentOS 8

  2. Jak nainstalovat X-Cart s Nginx a nechat šifrovat SSL na Ubuntu 18.04 LTS

  3. Jak nainstalovat Drupal s Nginx a nechat šifrovat SSL na Ubuntu 20.04 LTS