Come installare Magento 2 with Varnish, Apache and Pound as SSL Termination

 

 

In questo articolo, vi mostreremo come installare Magento 2 su un Ubuntu 16.04 VPS con MariaDB, Vernice come una cache di pagina intera, Apache and Pound as SSL termination. Questa guida dovrebbe funzionare su altre Linux VPS systems as well but was tested and written for an Ubuntu 16.04 VPS.

Prima di cominciare, you may want a different setup for your Magento. You can follow Questo tutorial to install Magento 2 su Ubuntu 16.04 VPS con MariaDB, PHP-FPM 7.0, Vernice come una cache di pagina intera, Nginx come terminazione SSL e Redis per la memorizzazione della sessione e la memorizzazione nella cache di pagina.

Or you can check out Questo tutorial to install Magento 2 su un Ubuntu 16.04 VPS con MariaDB, Vernice come una cache di pagina intera, Apache e Memcache per l'archiviazione di sessione.

If you have any different requirements, solo get a Linux VPS from us and we’ll set everything up for you, free of charge.

1. Login and update your server

Innanzitutto, you need to login to your Ubuntu 16.04 VPS via SSH as user root:

SSH [email protected]_IP_address

It is also recommended to start a screen session by executing the following command

screen -U -S magento

Aggiornare il sistema and install necessary packages with:

apt-get update && apt-get -y upgrade
apt-get -y install curl nano git

It is crucial that you always keep your server up to date. You can even abilitare gli aggiornamenti automatici in order to achieve this.

2. Installare e configurare MariaDB

Installare il più recente MariaDB 10.0 Server da repository ufficiali di Ubuntu:

apt-get install -y mariadb-server

Prossimo, Abbiamo bisogno di creare un database per la nostra installazione di Magento.

mysql -u root -p
MariaDB [(nessuno)]> CREATE DATABASE magento;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON magento.* TO 'magento'@'localhost' IDENTIFIED BY 'strong_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> q

Do not forget to replace ‘strong_password’ with an actual strong password. You can even generate a strong password from the command line.

3. Installare Apache2 web server

apt-get install apache2

4. Installare PHP e moduli PHP richiesti

Per installare l'ultima versione stabile di PHP versione 7 e tutti i moduli necessari, Correre:

apt-get install php7.0 libapache2-mod-php7.0 php7.0-mbstring php7.0-curl php7.0-zip php7.0-gd php7.0-mysql php7.0-mcrypt php7.0-xsl php-imagick php7.0-gd php7.0-cli php-pear php7.0-intl

Modificare alcune impostazioni di PHP:

sed -i "s/memory_limit = .*/memory_limit = 256M/" /etc/php/7.0/cli/php.ini
sed -i "s/upload_max_filesize = .*/upload_max_filesize = 128M/" /etc/php/7.0/cli/php.ini
sed -i "s/zlib.output_compression = .*/zlib.output_compression = on/" /etc/php/7.0/cli/php.ini
sed -i "s/max_execution_time = .*/max_execution_time = 18000/" /etc/php/7.0/cli/php.ini

Se non è già fatto, attivare il modulo di riscrittura di Apache2:

a2enmod rewrite

Per attivare la nuova configurazione, riavviare il server web Apache utilizzando il seguente comando:

riavviare il servizio apache2

5. Install Composer

Composer è un manager di dipendenza per PHP con cui è possibile installare pacchetti. Compositore tirerà in tutte le librerie richieste e le dipendenze che necessarie per il progetto.

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

6. Installare Magento 2 da Github

Clonare il repository di Magento per il ~/myMagentoSite.com Directory utilizzando il seguente comando:

git clone https://github.com/magento/magento2.git /var/www/myMagentoSite.com

Get the latest Magento 2 stable release:

CD /var/www/ www/myMagentoSite.com
git checkout $(descrivere git - Tag $(git rev-list--Tag - max-count = 1))

Eseguire composer per installare tutte le dipendenze di Magento:

installazione di compositore

Per continuare con l'installazione è possibile utilizzare l'installazione guidata o la riga di comando, in questa guida useremo quest'ultimo.

bin/magento setup:install 
--base-url=http://myMagentoSite.com/ 
--db-host=localhost 
--db-name=magento 
--db-user=magento 
--db-password=strong_password 
--admin-firstname=First  
--admin-lastname=Last 
[email protected] 
--admin-user=admin 
--admin-password=strong_password123 
--language=en_US 
--currency=USD 
--timezone=America/Chicago 
--use-rewrites=1

Se l'installazione ha esito positivo si vedrà qualcosa di simile qui di seguito:

[Successo]: Magento installazione completa.
[SUCCESS]: Magento Admin URI: /admin_1m0ezr

Eseguire il crontab comando per creare un cronjob

crontab -u www-data - e

e aggiungere la seguente riga:

* * * * * /usr/bin/php /var/www/myMagentoSite.com/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/myMagentoSite.com/var/log/magento.cron.log

Infine, impostare le autorizzazioni corrette:

chown -R www-data: /var/www/myMagentoSite.com

7. Configurare Apache

Creare una nuova direttiva di virtual host in Apache. Per esempio, you can create a new Apache configuration file named ‘magento.conf’ on your server:

touch /etc/apache2/sites-available/magento.conf
ln -s /etc/apache2/sites-available/magento.conf /etc/apache2/sites-enabled/magento.conf
nano /etc/apache2/sites-available/magento.conf

Quindi, aggiungere le seguenti righe:

<VirtualHost *: 80>
ServerAdmin [email protected]
DocumentRoot /var/www/myMagentoSite.com/
ServerName myMagentoSite.com
ServerAlias www.myMagentoSite.com
<Directory /var/www/myMagentoSite.com/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/myMagentoSite.com-error_log
CustomLog /var/log/apache2/myMagentoSite.com-access_log common
</VirtualHost>

Riavviare il server web Apache per le modifiche effettive:

riavviare il servizio apache2

Si dovrebbe ora essere in grado di accedere al tuo Magento back-end andando a http://myMagentoSite.com/admin_1m0ezr utilizzando le informazioni che impostato quando si esegue il bin/magento setup:install.

8. Installare e configurare vernice

To install Varnish, semplicemente eseguire il seguente comando:

apt-get install varnish

Da voi Magento Admin dashboard, clicca sul link negozi (barra laterale a sinistra)-> Configurazione-> AVANZATO-> Sistema-> Pagina intera Cache

Uncheck “Use system value” and from the Caching Application list, Selezionare Varnish Cache (scelta consigliata), salvare la configurazione, Clicca sul link vernice configurazione e fare clic su Esporta VCL per vernice 4 pulsante. Il varnish.vcl verrà esportato file che useremo la /var/www/myMagentoSite.com/var/ Directory.

Svuotare la cache di Magento con:

php bin/magento cache:flush

Elimina la /etc/varnish/default.vcl e link simbolico per la configurazione di vernice esportato.

rm -f /etc/varnish/default.vcl
ln -sf /var/www/myMagentoSite.com/var/varnish.vcl /etc/varnish/default.vcl

Cambiare porta di vernice da 6081 A 80, Abbiamo bisogno di modificare la configurazione del servizio di systemd.

Creare un nuovo customexec.conf file

mkdir -p /etc/systemd/system/varnish.service.d
nano /etc/systemd/system/varnish.service.d/customexec.conf

incollare il seguente:

[Service]
ExecStart=
ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m

e ricaricare systemd unità

systemctl demone-reload

Now we need to change Apache listening port from 80 A 8080. per farlo, open the Apache ports configuration file and change it as follows:

nano /etc/apache2/ports.conf

Listen 80 -> Ascolta 8080
nano /etc/apache2/sites-available/magento.conf

<VirtualHost *: 80> -> <VirtualHost *: 8080>

Se tutto è configurato correttamente, ora dovrebbe essere in grado di accedere al tuo Magento back-end andando a https://myMagentoSite.com/admin_1m0ezr.

Stuck somewhere? Get a VPS from us and we’ll do all of this for you, free of charge!

9. Install and configure Pound as SSL termination

Varnish doesn’t support SSL traffic, so you will need to install a proxy or load balancer like Pound to handle the SSL traffic. Per fare questo, we will configure Pound to only listen on port 443 and pass the traffic to Varnish on port 80.

Prima, let’s install Pound with:

apt-get install pound

Open the Pound configuration file:

nano /etc/pound/pound.cfg

e impostare le seguenti opzioni:

ListenHTTPS
    Address 1.2.3.4 ## this should be your server public IP address
    Port 443
    Cert "/etc/apache2/ssl/myMagentoSite.com.pem" ## path to your SSL certificate
    HeadRemove "X-Forwarded-Proto"
    AddHeader "X-Forwarded-Proto: https"
    Service
        BackEnd
            Address 127.0.0.1
            Porta 80
        End
    End
End

After you are done, restart your Apache and Varnish, and Pound:

service apache2 restart
service varnish restart
service pound restart

10. Ulteriori ottimizzazioni

To further optimize your Magento installation from your Magento admin dashboard:

1. Andare per negozi-> Configurazione-> CATALOGO-> Catalogo-> Categoria d'uso Catalogo piatto, Selezionare Sì e fare clic su Save Config.
2. Andare per negozi-> Configurazione-> AVANZATO-> Sviluppatore-> Impostazioni JavaScript e impostare su Sì Minify file JavaScript e unire i file JavaScript e fare clic su Save Config..
3. Andare per negozi-> Configurazione-> AVANZATO-> Sviluppatore-> Impostazioni CSS e impostare su Sì Unisci file CSS e Minify CSS file e fare clic su Save Config.
4. È consigliabile utilizzare un CDN – Content Delivery Network

Do not forget to flush the cache again:

php bin/magento cache:flush

You can also follow our guide on how to speed up Magento.

Questo è tutto. Aver installato Magento 2 with Memcache as a session storage and page caching, Varnish as a full page caching and Apache on your Ubuntu 16.04 VPS and you have set up Pound as SSL termination. Per ulteriori informazioni su come gestire l'installazione di Magento, fare riferimento al sito ufficiale Magento documentazione.

Fonte

articoli Correlati

Lasciare una risposta

L'indirizzo email non verrà pubblicato. i campi richiesti sono contrassegnati *

Chiudere